Pagini recente » Monitorul de evaluare | Cod sursa (job #375298) | Clasament simulare_oji_07_03_2023 | Cod sursa (job #1189743) | Cod sursa (job #4706)
Cod sursa(job #4706)
var a,b:array[1..100000]of longint;
n,k,i,j,q,z:longint;
procedure cautare;
var min,max,i,j:longint;
begin
if n=0 then exit;
for i:=1 to n do
begin
min:=0;
for j:=1 to n do
begin
if (a[i]<>a[j])and(a[j]<a[i]) then
min:=min+1;
end;
max:=(n-1)*(n-2)div 2 + min;
if (k>=min) and (k<=max) then
begin
z:=z+1;
b[z]:=a[i];
for j:=i+1 to n do
a[j-1]:=a[j];
n:=n-1;
k:=k-min;
cautare;
exit;
end;
end;
end;
begin
assign(input,'farfurii.in');
reset(input);
assign(output,'farfurii.out');
rewrite(output);
readln(n,k);
z:=0;
for i:=1 to n do a[i]:=i;
cautare;
for i:=1 to z do write(b[i],' ');
close(output);
end.