Pagini recente » Cod sursa (job #945315) | Viata de dupa olimpiade? (partea I) | Cod sursa (job #756530) | Cod sursa (job #2066193) | Cod sursa (job #2106623)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("farfurii.in");
ofstream g("farfurii.out");
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,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;
}