Pagini recente » Cod sursa (job #1726763) | Cod sursa (job #2775107) | Cod sursa (job #1055042) | Cod sursa (job #3257233) | Cod sursa (job #1072650)
#include<cstdio>
#include<cmath>
#define MAX_N 100005
using namespace std;
FILE *in,*out;
int N,i,sol[MAX_N],aux;
long int K;
int main()
{
in=fopen("farfurii.in","rt");
fscanf(in,"%d %ld",&N,&K);
fclose(in);
double c = (1 + sqrt(1+8*(double)K))/2;
long long m = (long long)c;
for (i = 1; i <= N - m; i++)
sol[i] = i;
for ( i = N - m + 1, aux = N; i <= N; i++)
sol[i] = aux--;
K -= m * (m - 1) / 2;
for ( i = N; i && K; i--, K--)
{
sol[i]--;
sol[N - m]++;
}
out=fopen("farfurii.out","wt");
for (int i = 1; i <= N; i++)
fprintf(out,"%d ",sol[i]);
fclose(out);
return 0;
}