Nu aveti permisiuni pentru a descarca fisierul grader_test2.ok
Cod sursa(job #1074881)
| Utilizator | Data | 8 ianuarie 2014 01:33:14 | |
|---|---|---|---|
| Problema | Farfurii | Scor | 90 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.77 kb |
#include <fstream>
using namespace std;
ifstream f("farfurii.in");
ofstream g("farfurii.out");
int main()
{
int i = 0, j, nu, N;
long long sum, K;
f >> N >> K;
sum = (N * (N - 1)) / 2;
if (sum == K)
{
for (j = N; j >= 1; --j)
g << j << ' ';
}
else
{
while (++i <= N)
{
sum = ((N - i) * (N - i - 1)) / 2;
if (sum <= K && sum > 0)
{
if (sum == K)
{
g << i << ' ' << N << ' ';
for (j = N - 1; j > i; --j)
g << j << ' ';
}
else
{
sum = ((N - i + 1) * (N - i)) / 2;
nu = N - (sum - K);
g << nu << ' ' << N << ' ';
for (j = N - 1; j >= i; --j)
if (j != nu)
g << j << ' ';
}
i = N + 3;
}
else
g << i << ' ';
}
}
return 0;
}