Pagini recente » Cod sursa (job #1546734) | Cod sursa (job #1280609) | Cod sursa (job #531968) | Cod sursa (job #452999) | Cod sursa (job #70515)
Cod sursa(job #70515)
#include <stdio.h>
#include <math.h>
int ec(long long k) {
double x;
x = (1 + sqrt(1+8*k))/2;
if (x == (long long)x)
return x;
else return (long long)x + 1;
}
int main() {
long long x, i, val, n, k;
FILE *f=fopen ("farfurii.in", "r");
FILE *g=fopen ("farfurii.out", "w");
fscanf (f, "%lld %lld", &n, &k);
fclose(f);
x=ec(k);
//for (x=1; x*(x-1)/2 < k ; ++x);
val=x*(x-1)/2;
for (i=1; i<=n-x; ++i)
fprintf (g, "%lld ", i);
fprintf (g, "%lld ", n-(val-k));
for (i=n; i>n-x; --i)
if (i!=n+k-val)
fprintf (g, "%lld ", i);
fprintf (g, "\n");
fclose(g);
return 0;
}