pascal超难问题:家庭作业
pascal吧
全部回复
仅看楼主
level 1
题目描述
homework.pas
今天玩得很开心,但也很累,呜呜……,不要呀,我的家庭作业还没完成呀!琦琦苦着脸跟妈妈说:可不可以不做呀?
琦琦今天的家庭作业是:给出m个数,从这m个数中任选n个数相加,可得到一系列的和。例如当m=4,n=3,4个整数分别是3,7,10,11时,可得全部的组合与它们的和为:
3+7+10=20 3+7+11=21 7+10+11=28 3+10+11=24
要求计算出共得到多少个不同的和。
你能帮琦琦完成她的家庭作业吗?
输入
输入文件共2行:
第1行为两个整数m,n(0<n≦m≦20);
第2行为m个500以内的正整数。
输出
输出文件共1行为得到的不同和的个数。
样例输入
样例1
输入
4 3
3 7 10 11
输出
4
样例2
输入
3 1
0 1 1
输出
2
样例输出
样例3
输入
3 2
1 2 3
输出
3
2016年03月08日 11点03分 1
level 12
代做作业是不好的(
2016年03月08日 13点03分 2
level 11
超难问题
同楼上[滑稽][滑稽][滑稽]
2016年03月12日 09点03分 4
level 6
简单,同楼上[滑稽]
2016年03月30日 11点03分 5
level 14
穷举吧
2016年03月30日 12点03分 6
level 11
递归再去重
2016年03月30日 15点03分 7
level 8
我有程序
2016年04月01日 05点04分 8
level 8
可是我不用PC[咦][委屈][委屈]
2016年04月01日 06点04分 9
level 8
2016年04月01日 06点04分 10
level 8
[泪]
2016年04月01日 06点04分 11
level 8
我争取给你吧
2016年04月01日 06点04分 12
level 5
0/1背包这么水的题目分分钟AC啊
2016年04月01日 12点04分 14
0/1背包?为什么?
2016年04月05日 11点04分
@82111668_2012 不对吗?看下面代码、、、不信自己去验证
2016年04月05日 14点04分
@x56765x 谢谢,看懂了,学到了,这一种知识迁移的方法真心很厉害。
2016年04月06日 11点04分
level 5
const maxn=25;
maxv=10005;
var n,m,allv:longint;
opt:array[0..maxv] of boolean;
f:array[0..maxv] of longint;
w:array[0..maxn] of longint;
function max(x,y:longint):longint;
begin
if x>y then exit(x) else exit(y);
end;
procedure init;
var i:longint;
begin
assign(input,'homework.in');reset(input);
assign(output,'homework.out');rewrite(output);
readln(n,m);
allv:=0;
for i:=1 to n do begin read(w[i]); inc(allv,w[i]); end;
end;
procedure main;
var i,j:longint;
begin
fillchar(opt,sizeof(opt),0);
fillchar(f,sizeof(f),0);
opt[0]:=true;
for i:=1 to n do
for j:=allv downto w[i] do
if opt[j-w[i]] then begin opt[j]:=true; if f[j]=m then continue; f[j]:=max(f[j],f[j-w[i]]+1); end;
end;
procedure print;
var i,ans:longint;
begin
ans:=0;
for i:=1 to allv do if (opt[i]) and (f[i]=m) then inc(ans);
writeln(ans);
close(input);close(output);
end;
begin
init;
main;
print;
end.
第二个数据有0,有毒,怎么都没法实现的
2016年04月01日 13点04分 15
假的!!这人有毒,要二维01,这样有漏洞。。唉,这孩子。。
2016年05月07日 07点05分
level 5
第2行为m个500以内的正整数。(0是什么鬼)
2016年04月01日 13点04分 16
level 11
20个数直接大暴力呀
2016年04月11日 15点04分 17
1 2 尾页