Pagini recente » Cod sursa (job #1400217) | Cod sursa (job #3183249) | Cod sursa (job #2747555) | Cod sursa (job #2038671) | Cod sursa (job #503294)
Cod sursa(job #503294)
// infoarena: problema/farfurii //
#include <fstream>
#include <cstdio>
using namespace std;
FILE *in=fopen("farfurii.in","r"), *out=fopen("farfurii.out", "w");
unsigned int n,k,i,m,x[100010],q;
int main()
{
fscanf(in, "%d %d", &n, &k);
for(i=0; i*(i+1)/2 < k; i++);
m=i;
if(m*(m-1)/2 == k)
{
for(i=1; i<=n-m; i++)
fprintf(out,"%d ",i);
for(i=n; i>=n-m+1; i--)
fprintf(out,"%d ",i);
return 0;
}
for(i=1; i<=n-m-1; i++)
fprintf(out,"%d ",i);
fprintf(out,"%d ",n-(m*(m+1)/2-k));
for(q=n; q>=n-m; q--)
if(q != n-(m*(m+1)/2-k))
fprintf(out,"%d ",q);
return 0;
}