poj之旅_2184
来源:互联网 发布:mysql可视化面板 编辑:程序博客网 时间:2024/05/22 04:20
题目描述:有N头奶牛想参加CJ,每头奶牛的智商分别为S_i,情商为F_i。欲挑出一群奶牛使得S之和与F之和都不为负数,且SF之和最大,求此最大值
题解:01背包,把S看成包重,F看成价值。注意C中没有下标为负的数组,只好将数组右移足够大的单位,注意要分S的正负讨论。
参考程序:
#include<cstdio>#include<algorithm>#include<cstring>using namespace std;int f[1000*100*2+26];int w[120],v[120];int main(){int n;scanf("%d",&n);int center=1000*n;int M=2*center+20;for (int i=0;i<n;i++)scanf("%d %d",&w[i],&v[i]);memset(f,0x80,sizeof(f));f[center]=0;for (int i=0;i<n;i++)if (w[i]>=0)for (int j=M;j>=w[i];j--)f[j]=max(f[j],f[j-w[i]]+v[i]);elsefor (int j=0;j-w[i]<M;j++)f[j]=max(f[j],f[j-w[i]]+v[i]);int ans=-M;for (int i=center;i<M;i++)if (f[i]>=0)ans=max(ans,i-center+f[i]);printf("%d",ans);return 0;}
0 0
- poj之旅_2184
- 我的POJ之旅
- poj之旅:1195 树状
- POJ 2135 Farm Tour 农场之旅
- poj之旅——3258
- poj之旅——3273
- poj之旅——3104
- poj之旅——3045
- poj之旅——2976
- poj之旅——3111。
- poj之旅——3579
- poj之旅——1979
- poj之旅——3009
- poj之旅——3669
- poj之旅——2718
- poj之旅——3187
- poj之旅——3050
- poj之旅——2376
- TCP套接字编程
- Linux下配置Java环境变量
- Network in Network 论文学习
- 一个可变参数类型检查的示例
- 64. Minimum Path Sum
- poj之旅_2184
- C primer plus 第八章 例题疑问(递归)(求解答求回复)
- App Store研究:iOS APP提交上架最新流程
- 图片的分辨率大于设备分辨率或者小于设备的分辨率的显示问题
- 常用排序算法的时间复杂度和空间复杂度
- Web提醒服务的四种实现方式比较
- 59. Spiral Matrix II
- call by value 和 call by reference
- [Android进阶]Java、Android 内存泄漏总结