本文主要是介绍砝码称重II,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
砝码称重II
Time Limit:1000MS Memory Limit:65536K
Total Submit:81 Accepted:57
Description
设有1克、2克、5克、10克、20克、50克的法码各若干枚,问使用这些法码可称出多少种不同的重量,设法码的总重量不超过10000克。
Input
Output
Sample Input
10 5 0 10 20 5
Sample Output
770
Source
elba
-
constv:array[1..6]of longint=(1,2,5,10,20,50); varb:array[0..1000]of boolean;a,f:array[0..1000]of longint;n,m,i,j,k,s:longint;function max(x,y:longint):longint; beginif x>y then exit(x) elseexit(y);end;beginfor i:=1 to 6 doread(a[i]);for i:=1 to 6 dofor j:=1000 downto 1 dofor k:=1 to a[i] dobeginif j>=v[i]*k thenbeginf[j]:=max(f[j],f[j-k*v[i]]+k*v[i]);b[f[j]]:=true;end;end;for i:=1 to 1000 doif b[i] then inc(s);writeln(s);end.
这篇关于砝码称重II的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!