Pagini recente » Cod sursa (job #2738037) | Cod sursa (job #144459) | Cod sursa (job #2536736) | Cod sursa (job #735611) | Cod sursa (job #2179)
Cod sursa(job #2179)
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.