uva 562 - Dividing coins
2013-05-08 21:34
501 查看
/* ID: daniel.20 LANG: JAVA TASK: shopping */ import java.io.*; import java.util.*; public class Main{ public static void main (String [] args) throws Exception { Scanner scan = new Scanner(System.in); int n = scan.nextInt(); while(n-->0){ int num = scan.nextInt(); int[] coins = new int[num+1]; int sum = 0; for(int i =1;i<=num;i++){ coins[i] = scan.nextInt(); sum+=coins[i]; } int target = sum>>1; int dp[] = new int[target+1]; for(int i=1;i<num+1;i++){ for(int j=target;j>=coins[i];j--){ dp[j] = Math.max(dp[j-coins[i]]+coins[i], dp[j]); } } System.out.println(Math.abs(sum-2*dp[target])); } } }
之前A过的题,没贴上来。
其实没什么多说了,一个小转化,以sum的一半做背包的容量,尽量装满。
相关文章推荐
- uva 562 - Dividing coins
- UVA 562 Dividing coins
- UVa 562 - Dividing coins
- UVa 562 - Dividing coins 背包
- UVA - 562 Dividing coins 经典01背包
- UVa 562 - Dividing coins 背包
- UVALive5583 UVA562 Dividing coins【0/1背包+DP】
- UVA 562 Dividing coins
- uva 562 Dividing Coins
- uva 562 - Dividing coins(注意判断条件,可以转换成01背包做)
- uva 562 Dividing coins
- UVa 562 - Dividing coins
- uva 562 Dividing coins
- UVa 562 - Dividing coins
- Uva-562- Dividing coins
- uva_562 Dividing coins
- UVa 562 Dividing coins
- UVA 562 Dividing coins
- UVA 562 - Dividing coins
- UVA 562 Dividing coins 01背包 Commencel