Pagini recente » Cod sursa (job #2091501) | Cod sursa (job #2998540) | Cod sursa (job #568646) | Cod sursa (job #2700410) | Cod sursa (job #799959)
Cod sursa(job #799959)
#include <cstdio>
using namespace std;
const int N = 100005;
int n, k, K, inv;
int sol[N];
bool pus[N];
int main()
{
freopen ("farfurii.in", "r", stdin);
freopen ("farfurii.out", "w", stdout);
scanf("%d %d", &n, &K);
for (int i = 1; i <= n; ++i) {
inv = 0;
for (int j = n; j >= 1; --j) {
k = K - (inv * (inv - 1)) / 2;
if (!pus[j] && ((n - i - 1) * (n - i)) / 2 >= k) {
pus[j] = 1;
pus[sol[i]] = 0;
sol[i] = j;
continue;
}
if (pus[j])
++inv;
}
}
for (int i = 1; i <= n; ++i)
printf("%d ", sol[i]);
}