Cod sursa(job #2179)

Utilizator alex_dincaDinca Alexandru-Nicolae - UPB alex_dinca Data 16 decembrie 2006 11:03:49
Problema Farfurii Scor 80
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.63 kb
var n,k,i,m,p:longint;
    f,g:text;
begin
assign(f,'farfurii.in');reset(f);
readln(f,n,k);
assign(g,'farfurii.out');rewrite(g);
p:=1;
while p<n do p:=p*2;
m:=0;
while p>0 do begin
   if (m+p<=n)and((m+p)*(m+p-1)<=2*k) then m:=m+p;
   p:=p div 2;
   end;
k:=k-m*(m-1) div 2;
if k=0 then begin
  for i:=1 to n-m do write(g,i,' ');
  for i:=n downto n-m+1 do write(g,i,' ');
  writeln(g);
  end
else begin
  k:=m-k;
  m:=m+1;
  for i:=1 to n-m do write(g,i,' ');
  write(g,n-k,' ');
  for i:=n downto n-k+1 do write(g,i,' ');
  for i:=n-k-1 downto n-m+1 do write(g,i,' ');
  writeln(g);
  end;
close(f);
close(g);
end.