Pagini recente » Cod sursa (job #1516998) | Cod sursa (job #2818557) | Cod sursa (job #1504991) | Cod sursa (job #1820888) | Cod sursa (job #2244334)
#include <stdio.h>
#define NMAX 100005
using namespace std;
FILE *fin=fopen("farfurii.in","r"); FILE *fout=fopen("farfurii.out","w");
long long int N,K,Termen,Sum,i,Poz,Completez,A[NMAX];
int main()
{
fscanf(fin,"%d%d",&N,&K);
Termen=1; Sum=0;
while(Sum+Termen<K) {Sum+=Termen; ++Termen;}
Completez=N;
for(i=N-Termen+1; i<=N; ++i) A[i]=Completez--;
if(K!=Sum)
Poz=K-Sum;
A[N-Termen]=A[N-Poz+1];
for(i=N-Poz+1; i<=N; ++i) --A[i];
for(i=1; i<=N-Termen-1; ++i) A[i]=i;
for(i=1; i<=N; ++i) fprintf(fout,"%d ",A[i]);
return 0;
}