讨论 / 怎么做?
maosasa 2012-04-16 21:45:00
点我顶贴 收藏 删除
Loser's spring
#1 maosayun@2012-04-16 21:35:00
回复 删除
var k,n,i,j,t,m:longint;

a,b,c:array[1..10000]of longint;

y:array[1..9]of string;

f,th:array[0..10000]of longint;

begin

readln(k,n,t);

for i:=1 to n do readln(a[i],b[i],c[i]);

for i:=1 to n do

for j:=k-a[i] downto 0 do

if (f[j]+b[i]>f[j+a[i]])and(th[j]+c[i]<=t) then

f[j+a[i]]:=f[j]+b[i]

else f[j+a[i]]:=f[j+a[i]];

y[1]:='yi';y[2]:='er';y[3]:='san';y[4]:='si';y[5]:='wu';

y[6]:='liu';y[7]:='qi';y[8]:='ba';y[9]:='jiu';

if m=0 then write('ling') else begin

if m>=1000 then begin if m div 1000<>2 then write(y[m div 1000],' qian')

else if m div 1000=2 then write('liang qian');

m:=m mod 1000; if f[k] mod 1000>0 then write(' ');

if (f[k] mod 1000 div 100=0)and(f[k] mod 100>0) then write('ling ');end;

if m>=100 then begin if m div 100<>2 then write(y[m div 100],' bai')

else if m div 100=2 then write('er bai');

m:=m mod 100; if (f[k] mod 1000 div 100>0)and(f[k] mod 100>0) then write(' ');

if (f[k] mod 1000 div 100>0)and(f[k] mod 100=0) then write('ling ');end;

m:=m mod 100;

writeln;

end.

#2 wangdingli@2012-04-16 21:45:00
回复 删除
RP+++++++++++++++++++

就不告诉你

查看更多回复
提交回复