Pagini recente » Cod sursa (job #2972566) | Cod sursa (job #320280) | Cod sursa (job #1955134) | Cod sursa (job #605689) | Cod sursa (job #2106627)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("farfurii.in");
ofstream g("farfurii.out");
long long int n,k;
int main()
{
///k<=(n)*(n-1)/2 => putem construi o perm de lungime n cu k inversiuni
f>>n>>k;
int i;
long long int nr_max;
if(k==0)
{
for(i=1;i<=n;++i)
g<<i<<' ';
return 0;
}
for(i=0;;++i)
{
nr_max=(n-i-1)*(n-i-2)/2;
//g<<nr_max<<'\n';
if(k>nr_max)
break;
g<<i+1<<' ';
}
// g<<endl;
g<<i+1+k-nr_max<<' ';
for(int j=n;j>i;--j)
if(j==i+1+k-nr_max)
continue;
else g<<j<<' ';
return 0;
}