Cod sursa(job #1064603)
Utilizator | Data | 22 decembrie 2013 01:52:24 | |
---|---|---|---|
Problema | Farfurii | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.49 kb |
#include <fstream>
using namespace std;
ifstream fin("farfurii.in");
ofstream fout("farfurii.out");
long long N, K;
int main()
{
long long inv = 0, i, care;
fin >> N >> K;
while( inv * (inv - 1) / 2 < K ) inv++;
for(i = 1; i <= N - inv; i++)
fout<<i <<" ";
if(K)
{
care = K - (inv - 1) *(inv - 2) / 2 + N - inv + 1;
fout<<care<<" ";
}
for(i = N; i > N - inv; i--)
if(i != care)fout<<i<<" ";
return 0;
}