Cod sursa(job #678345)
| Utilizator | Data | 11 februarie 2012 15:46:01 | |
|---|---|---|---|
| Problema | Farfurii | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.53 kb |
# include <fstream>
# include <math.h>
using namespace std;
ifstream f("farfurii.in");
ofstream g("farfurii.out");
long n,x,i,y;
long long k;
double p;
int main()
{f>>n>>k;
p=(-1+sqrtf(1+8*k))/2;
x=p;
if(p==floor(p)) {
for(i=1;i<=n-p-1;i++) g<<i<<' ';
for(i=n;i>=n-p;i--)g<<i<<' ';
}
else
{ y=n-x-1+(k-x*(x+1)/2);
for(i=1;i<=n-x-2;i++) g<<i<<' ';
g<<y<<' ';
for(i=n;i>=n-x;i--)if(i!=y)g<<i<<' ';
g<<n-x-1<<'\n';
}
f.close();
g.close();
return 0;
}