Pagini recente » Cod sursa (job #1047488) | Cod sursa (job #1768023) | Cod sursa (job #2255445) | Cod sursa (job #1700985) | Cod sursa (job #2456381)
#include <fstream>
using namespace std;
ifstream fin( "farfurii.in" );
ofstream fout( "farfurii.out" );
const int NMAX = 100002;
int N;
long long K;
int a[NMAX];
int main()
{
fin >> N >> K;
int p;
for( int i = 1; i <= N; ++i )
if( 1LL * i * ( i - 1 ) / 2 >= K )
{
for( int j = 1; j <= N - i; ++j )
a[j] = j;
K = i * ( i - 1 ) / 2 - K;
p = N - i + 1;
break;
}
for( int i = p; i <= N; ++i )
a[i] = N - ( i - p );
int aux = a[p + K];
for( int i = p + K; i > p; --i )
a[i] = a[i - 1];
a[p] = aux;
for( int i = 1; i <= N; ++i )
fout << a[i] << ' ';
return 0;
}