Pagini recente » Monitorul de evaluare | Cod sursa (job #3342602) | Cod sursa (job #3331380) | Cod sursa (job #3338377) | Cod sursa (job #3331052)
#include <bits/stdc++.h>
using namespace std;
vector<int> inv;
void inversiuni(int N,int K)
{
inv.clear();
int i=0,nr=N,j,x=1;
while(nr-1<=K)
{
K-=(nr-1);
inv.push_back(N-nr+1);
i++;
nr--;
}
inv.push_back(N-K);
for(int i=N;i>=N-nr+1;i--)
{
if(i!=N-K)
{
inv.push_back(i);
}
}
}
int main()
{
int N,K;
cin>> N >> K;
inversiuni( N, N*(N-1)/2-K );
for(int i=0; i<N; i++)
{
cout<<inv[i]<<' ';
}
cout<<'\n';
return 0;
}