hdu 1171
来源:互联网 发布:房产经纪人必备软件 编辑:程序博客网 时间:2024/04/28 04:17
真心无语了。wa了无数次,终于才发现原来是数组开的太小了,浪费多少时间啊。。。。。。
这是一个多重背包问题,但那个dp式子实在不好理解的,直接转化成0,1背包了,然后就很easy了。
import java.util.Arrays;import java.util.Scanner;public class Main{ public static void main(String[] args) { int n,v,m; int pack[]=new int[50001]; int dp[]=new int[250001]; Scanner cin= new Scanner(System.in); n=cin.nextInt(); while(n>=0) { int sum=0,k=0,value=0; Arrays.fill(dp,0); for(int i=0;i<n;i++)//转化0,1背包 { v=cin.nextInt(); m=cin.nextInt(); for(int j=0;j<m;j++) { pack[k++]=v; } value+=v*m; } sum=value/2; for(int i=0;i<k;i++) { for(int j=sum;j>=pack[i];j-=pack[i]) { dp[j]=Math.max(dp[j-pack[i]]+pack[i], dp[j]); } } System.out.println(value-dp[sum]+" "+dp[sum]);//不用比较的 dp[sum]肯定小于sum n=cin.nextInt(); } }}
- HDU 1171 ?
- hdu 1171
- hdu 1171
- hdu 1171
- hdu 1171
- hdu 1171
- HDU 1171
- hdu 1171
- hdu 1171
- HDU 1171
- hdu 1171
- hdu 1171
- HDU 1171
- HDU 1171
- HDU 1171
- hdu 1171
- hdu 1171
- HDU 1171
- 成绩问题
- vs2010自带的SQL2008升级
- c++中字符串的使用--------string::npos 的理解
- hdu 1004 Let the Balloon Rise
- 自己设计的三角形的类
- hdu 1171
- java 短信猫开发,smslib库文件配置问题
- 第五周项目二分数类
- 将字符型数字转化为整型数字
- 揭秘百度蜘蛛的七点特性
- Qt学习笔记
- ubuntu下openoffice的安装
- java 压缩文件夹(包含内容)
- vs2005 解决方案显示不了的解决方法