Pagini recente » Cod sursa (job #1351346) | Cod sursa (job #1134538) | Cod sursa (job #6239) | Cod sursa (job #161164) | Cod sursa (job #1501981)
#include <cstdio>
#include<cmath>
using namespace std;
FILE *f=fopen("farfurii.in", "r");
FILE *g=fopen("farfurii.out", "w");
int n, k, v[100005], a[100005];
int main()
{
fscanf(f, "%d%d", &n, &k);
long long x=sqrt(2*k);
if(x*(x-1)>2*k) --x;
if(x*(x+1)<2*k) ++x;
int w=x-2;
for(int i=1; i<=w; ++i)
fprintf(g, "%d ", i);
w=n-w;
x=-(x*(x-1)/2-k);
for(int i=1; i<=w; ++i){
v[i]=n-i+1;
a[i]=i-1;
}
for(int i=w; i>=1&&x!=0; --i)
if(x>=a[i]){
fprintf(g, "%d ", v[i]);
x-=a[i];
v[i]=-1;
}
for(int i=1; i<=w; ++i)
if(v[i]!=-1)
fprintf(g, "%d ", v[i]);
return 0;
}