Cod sursa(job #1053088)
| Utilizator | Data | 12 decembrie 2013 10:40:50 | |
|---|---|---|---|
| Problema | Farfurii | Scor | 70 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.5 kb |
#include <stdio.h>
using namespace std;
FILE *f=fopen("farfurii.in","r");
FILE *g=fopen("farfurii.out","w");
int n,k,v[200005],i,j,m,ct,nr;
int main()
{
fscanf(f,"%d%d",&n,&k);
m=1;
while(k>m*(m-1)/2) m++;
for(i=1;i<=n-m;i++)
v[i]=i;
ct=n-m;
for(i=n;i>=n-m+1;i--)
v[++ct]=i;
if (k<m*(m-1)/2)
{nr=n-(m*(m-1)/2-k);
for(j=1;j<=ct;j++)
{
if (v[j]!=nr)fprintf(g,"%d ",v[j]);
if (j==n-m)fprintf(g,"%d ",nr);
}
}
else for(j=1;j<=ct;j++)fprintf(g,"%d ",v[j]);
fclose(g);
return 0;
}
