Pagini recente » Cod sursa (job #61573) | Cod sursa (job #1595801) | Cod sursa (job #154138) | Cod sursa (job #2301556) | Cod sursa (job #2755280)
#include <fstream>
std::ifstream f("farfurii.in");
std::ofstream g("farfurii.out");
int N;
long long K;
void solutie()
{
for(int i = 1; i < N - 1; ++i)
{
if(1LL * (N - i) * (N - i - 1) / 2 >= K)
g << i << ' ';
else
{
K -= 1LL * (N - i) * (N - i - 1) / 2;
int Val = i;
while(K != 0)
{
--K;
++Val;
}
g << Val << ' ';
for(int j = N; j >= i; --j)
if(j != Val)
g << j << ' ';
return;
}
}
if(K == 1)
g << N << ' ' << N - 1;
else // K == 0
g << N - 1 << ' ' << N;
}
int main()
{
f >> N >> K;
if(N == 1)
g << 1;
solutie();
return 0;
}