Pagini recente » Cod sursa (job #194120) | Cod sursa (job #1215989) | Cod sursa (job #1695669) | Cod sursa (job #1518253) | Cod sursa (job #169907)
Cod sursa(job #169907)
program concurs;
var v:array[1..100000] of int64;
i,j:longint;
n,k,m,d:int64;
f,g:text;
procedure desc(x:longint);
var j,k:longint;
begin
x:=n-x+1;
j:=n;
while x<j do
begin
k:=v[x];v[x]:=v[j];v[j]:=k;
j:=j-1;x:=x+1;
end;
end;
begin
assign(f,'farfurii.in');reset(f);
assign(g,'farfurii.out');rewrite(g);
readln(f,n,k);close(f);
for i:=1 to n do
v[i]:=i;
d:=1+k*8;
if (trunc(sqrt(d))*trunc(sqrt(d))=d) then
begin
d:=trunc(sqrt(d));
m:=(1+d)div 2;
desc(m);
write(g,v[1]);
for i:=2 to n do write(g,' ',v[i]);
end
else
begin
d:=trunc(sqrt(d))+1;
m:=(1+d)div 2;
desc(m);
i:=n-((m-1)*m div 2-k);
for j:=1 to n-m do write(g,v[j],' ');
write(g,v[i]);
for j:=n-m+1 to i-1 do write(g,' ',v[j]);
for j:=i+1 to n do write(g,' ',v[j]);
end;
close(g);
end.