讨论 / 强烈鄙视出题者
adsf 2012-03-06 04:35:00
点我顶贴 收藏 删除
题目:奖金

状态: Unaccepted

得分: 60分

测试结果4: 测试结果错误.错误结果为:22835099kao

正确结果应为:16950743

测试结果6: 测试结果错误.错误结果为:163189682kao

正确结果应为:95068146

测试结果7: 测试结果错误.错误结果为:20547747kao

正确结果应为:11144826

测试结果9: 测试结果错误.错误结果为:7281099kao

正确结果应为:6450430

提交代码:

program jiang_jin;

const maxn=11000;

var i,j,k,m,n,o,u:longint;

c:array[0..maxn]of boolean;

a,b,w:array[0..maxn]of longint;

procedure sort(p,q:longint);

var i,j,k,g:longint;

begin

i:=p; j:=q; k:=b[(i+j) shr 1];

repeat

while b[i]<k do inc(i);

while b[j]>k do dec(j);

if i<=j then

begin

g:=b[i]; b[i]:=b[j]; b[j]:=g;

g:=w[i]; w[i]:=w[j]; w[j]:=g;

inc(i); dec(j);

end;

until i>j;

if p<j then sort(p,j);

if i<q then sort(i,q);

end;

begin

read(n,m);

for o:=1 to n do read(b[o],w[o]);

sort(1,n);

fillchar(c,sizeof(c),#0); c[0]:=true;

for j:=0 to m do

if c[j] then

for i:=1 to n do

begin

if j+b[i]>m then break;

if a[j]+w[i]>a[j+b[i]] then

begin c[j+b[i]]:=true; a[j+b[i]]:=a[j]+w[i]; end;

end;

write(a[m]); if b[1]=0 then writeln('kao');

end.

题目很显然,如果存在价格为0的就无解

可是上面几组错的都是价格为0的

#1 bj_06@2010-09-19 08:14:00
回复 删除
额~~~~~~~~~~~~~~~~~~~~~~~~~

额~~~~~~~~~~~~~~~~~~~~~~~~~

#2 bj_06@2010-09-19 08:14:00
回复 删除
悲剧啊!

悲剧啊!

#3 bj005@2010-09-19 08:26:00
回复 删除
我顶死你!!!!!!!!!!!!!!!!!
#4 wtta@2010-09-22 19:32:00
回复 删除
鄙视出题者

强烈鄙视!!!!我也只有60分!!!

#5 delostik@2010-09-22 20:04:00
回复 删除
顶!

我也是

#6 wower2@2010-10-23 23:59:00
回复 删除
靠。。。。。。
#7 灌水@2010-11-25 03:36:00
回复 删除
不文明行为

adsf,wtta,wower2骂脏话,请管理员封号。

#8 shiyuxuan@2011-10-21 05:28:00
回复 删除
我也是60
#9 球威@2012-03-06 04:33:00
回复 删除
同BS

顶啊!!!!!!!!!!!!

#10 球威@2012-03-06 04:35:00
回复 删除
强烈要求改数据!!!!!!!
查看更多回复
提交回复