Cod sursa(job #82404)

Utilizator gurneySachelarie Bogdan gurney Data 6 septembrie 2007 20:34:39
Problema Farfurii Scor 100
Compilator fpc Status done
Runda Arhiva de probleme Marime 1 kb
program farfurii;
  const
    fin='farfurii.in';
    fout='farfurii.out';
  var
    y,i,j:longint;
    m,k,n,x:int64;
    a:array[1..100010] of longint;
  begin
    assign(input,fin);
      reset(input);
      readln(n,k);
    close(input);
    assign(output,fout);
      rewrite(output);
      m:=1;
      if n=1 then
        writeln(1)
      else
      begin
      while ((m+1)*m) shr 1<k do
        inc(m);
      if (m*(m+1)) shr 1=k then
        begin
          for i:=1 to n-m-1 do
            write(i,' ');
          for i:=n-m to n do
            write(n-(i-n+m),' ');
        end
      else
        begin
          for i:=1 to n-m-1 do
            a[i]:=i;
          for i:=n-m to n do
            a[i]:=n-(i-n+m);
          x:=n-(m*(m+1)shr 1-k);
          for i:=1 to n do
            if a[i]=n then
              write(x,' ',n,' ')
            else if a[i]<>x then
              write(a[i],' ');
          writeln;
        end;
      end;
    close(output);
  end.