Cod sursa(job #1899742)
| Utilizator | Data | 2 martie 2017 21:58:38 | |
|---|---|---|---|
| Problema | Farfurii | Scor | 80 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.57 kb |
#include <fstream>
#define nmax 100001
using namespace std;
ifstream fin("farfurii.in");
ofstream fout("farfurii.out");
long long h,n,k,v[nmax],z,i,val;
inline long long suma(int h)
{
return h*(h-1)/2;
}
int main()
{
fin>>n>>k;
while(k<suma(n-h))
h++;
for(i=1;i<h;i++)
v[i]=i;
val=n-(suma(n-h+1)-k);
v[i]=val;
for(i=n,z=h;z<val;i--,z++)
v[i]=z;
for(i=h+1,z=n;z>val;i++,z--)
v[i]=z;
for(i=1;i<=n;i++)
fout<<v[i]<<' ';
fin.close();
fout.close();
return 0;
}
