Nu aveti permisiuni pentru a descarca fisierul grader_test18.in
Cod sursa(job #51095)
| Utilizator | Data | 9 aprilie 2007 21:56:56 | |
|---|---|---|---|
| Problema | Oite | Scor | 0 |
| Compilator | fpc | Status | done |
| Runda | Arhiva de probleme | Marime | 1.09 kb |
var f1,f2:text; n,i,j,h,s,nr,l,k,max:longint; v:array[1..3,0..20001] of integer; a:array[1..100] of longint; x:array[1..100000] of longint;
begin
assign(f1,'oite.in');
reset(f1);
assign(f2,'oite.out');
rewrite(f2);
read(f1,n,l);
max:=1;h:=1;
for i:=1 to n do read(f1,a[i]);
x[1]:=a[1];
v[1,x[1]]:=1;
for i:=2 to n do begin
v[1,a[i]]:=1;
max:=h;
for j:=1 to max do begin
for k:=1 to 2 do
if (v[k,x[j]]=1)and(x[j]+a[i]<=l) then
begin
v[k+1,x[j]+a[i]]:=1;
inc(h);
x[h]:=x[j]+a[i];
if a[i]=0 then break;
end;
if (v[3,x[j]]=1)and(x[j]+a[i]=l) then inc(nr);
end;
end;
writeln(f2,nr);
close(f1);
close(f2);
end.
