Cod sursa(job #299736)

Utilizator ioalexno1Alexandru Bunget ioalexno1 Data 6 aprilie 2009 22:38:35
Problema Economie Scor 100
Compilator fpc Status done
Runda Arhiva de probleme Marime 1.05 kb
program alex;
var f:text;
    a,sol:array[0..1001]of longint;
    viz:array[0..50001]of 0..1;
    i,n,k,z,nr,j:longint;
    e:boolean;
begin
assign(f,'economie.in');reset(f);
read(f,n);
for i:=1 to n do
    read(f,a[i]);
close(f);
k:=n-1;
e:=false;
while e=false do
      begin
      e:=true;
      for i:=1 to k do
          if a[i]>a[i+1] then begin
                              e:=false;
                              z:=a[i];
                              a[i]:=a[i+1];
                              a[i+1]:=z;
                              z:=i;
                              end;
      k:=z;
      end;
nr:=0;
for i:=1 to n do
    if viz[a[i]]=0 then begin
                        nr:=nr+1;
                        sol[nr]:=a[i];
                        viz[a[i]]:=1;
                        for j:=a[i]+1 to a[n] do
                            if(viz[j-a[i]]=1)and(viz[j]=0)then viz[j]:=1;
                        end;
assign(f,'economie.out');rewrite(f);
writeln(f,nr);
for i:=1 to nr do
    writeln(f,sol[i]);
close(f);
end.