刷题——Cow Exhibition POJ
来源:互联网 发布:2017年度人工智能报告 编辑:程序博客网 时间:2024/05/29 07:07
/*
变种01背包,将一种价值转化成数组下标,变成改下标下另一种物品价值的最大值
*/
#include <stdio.h>
int dp[200005];
int s[105],f[105];
#define INF 1e9
#define max(a,b) a>b?a:b
int main(){
int n;
while(~scanf("%d",&n)){
for(int i=0;i<n;i++){
scanf("%d %d",&s[i],&f[i]);
if(s[i]<=0&&f[i]<=0){
i--;
n--;
}
}
for(int i=1;i<=200000;i++){
dp[i]=-INF;
}
dp[100000]=0;
for(int i=0;i<n;i++){
if(s[i]>=0){
for(int j=200000;j>=s[i];j--){
if(dp[j-s[i]]>-INF){
dp[j]=max(dp[j],dp[j-s[i]]+f[i]);
}
}
}
else{
for(int j=0;j<=200000+s[i];j++){
if(dp[j-s[i]]>-INF){
dp[j]=max(dp[j],dp[j-s[i]]+f[i]);
}
}
}
}
int ans=-INF;
for(int i=100000;i<=200000;i++){
if(dp[i]>=0){
ans=max(ans,dp[i]+i-100000);
}
}
printf("%d\n",ans>-INF?ans:0);
}
return 0;
}
变种01背包,将一种价值转化成数组下标,变成改下标下另一种物品价值的最大值
*/
#include <stdio.h>
int dp[200005];
int s[105],f[105];
#define INF 1e9
#define max(a,b) a>b?a:b
int main(){
int n;
while(~scanf("%d",&n)){
for(int i=0;i<n;i++){
scanf("%d %d",&s[i],&f[i]);
if(s[i]<=0&&f[i]<=0){
i--;
n--;
}
}
for(int i=1;i<=200000;i++){
dp[i]=-INF;
}
dp[100000]=0;
for(int i=0;i<n;i++){
if(s[i]>=0){
for(int j=200000;j>=s[i];j--){
if(dp[j-s[i]]>-INF){
dp[j]=max(dp[j],dp[j-s[i]]+f[i]);
}
}
}
else{
for(int j=0;j<=200000+s[i];j++){
if(dp[j-s[i]]>-INF){
dp[j]=max(dp[j],dp[j-s[i]]+f[i]);
}
}
}
}
int ans=-INF;
for(int i=100000;i<=200000;i++){
if(dp[i]>=0){
ans=max(ans,dp[i]+i-100000);
}
}
printf("%d\n",ans>-INF?ans:0);
}
return 0;
}
阅读全文
0 0
- 刷题——Cow Exhibition POJ
- poj(2184)——Cow Exhibition(01背包变形)
- poj 2184 Cow Exhibition
- POJ 2184 Cow Exhibition
- Poj 2184 Cow Exhibition
- poj 2184 Cow Exhibition
- poj 2184 Cow Exhibition
- POJ 2184 Cow Exhibition
- POJ-2184-Cow Exhibition
- POJ 2184 Cow Exhibition
- poj 2184 Cow Exhibition
- poj 2184 Cow Exhibition
- poj 2184 Cow Exhibition
- poj 2184--Cow Exhibition
- POJ 2184Cow Exhibition
- poj 2184 Cow Exhibition
- poj 2184:Cow Exhibition
- poj-2184-Cow Exhibition
- vba中的自动筛选(atuo filter) 实现(realize)
- 301和302跳转的区别
- spark学习笔记:考察集群的文件读取机制
- 【23种设计模式】创建型模式 > 单例模式
- Java-继承、重载、重写、多态
- 刷题——Cow Exhibition POJ
- UIImage 的图片平铺实现效果
- Python3《机器学习实战》学习笔记(五):朴素贝叶斯实战篇之新浪新闻分类
- android keycode
- lvs-fullnat
- hdu 6165 FFF at Valentine (Tarjan算法,scc+dp)
- DOM事件介绍
- Laravel
- java可重入锁(ReentrantLock)的实现原理