Cod sursa(job #802041)

Utilizator tibi2012Galatanu Tiberiu tibi2012 Data 25 octombrie 2012 18:28:56
Problema Farfurii Scor 100
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.64 kb
var aux,nr,k,j:int64;
    a:array [0..100005] of longint;
    i,m,n:longint;
    f,g:text;
begin
  assign(f,'farfurii.in');
  assign(g,'farfurii.out');
  reset(f);
  rewrite(g);
  readln(f,n,nr);
  aux:=1;
  j:=1;
  while aux<=nr do
    begin
      inc(j);
      aux:=j*(j-1) div 2;
    end;
  dec(j);
  aux:=n-j;
  k:=nr-j*(j-1) div 2;
  for i:=1 to aux do
    a[i]:=i;
  m:=n;
  for i:=aux+1 to n do
    begin
      a[i]:=m;
      dec(m);
    end;
  for i:=n downto n-k+1 do
    begin
      m:=a[i];
      a[i]:=a[aux];
      a[aux]:=m;
    end;
  for i:=1 to n do
    write(g,a[i],' ');
  close(f);
  close(g);
end.