Pagini recente » Cod sursa (job #2517578) | Cod sursa (job #116704) | Cod sursa (job #2822962) | Cod sursa (job #1422199) | Cod sursa (job #2244338)
#include <stdio.h>
#define NMAX 100005
using namespace std;
FILE *fin=fopen("farfurii.in","r"); FILE *fout=fopen("farfurii.out","w");
unsigned 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;
}