Pagini recente » Cod sursa (job #1645907) | Cod sursa (job #1690062) | Cod sursa (job #1620411) | Cod sursa (job #516182) | Cod sursa (job #2755330)
#include <bits/stdc++.h>
using namespace std;
int main()
{
int n, k, invers;
ifstream f("farfurii.in");
ofstream o("farfurii.out");
f >> n >> k;
invers = 0;
// calculam numarul de inversiuni, dupa care afisam cele n - invers numere care nu fac nici o inv.
while(invers * (invers + 1)/2 <= k){
invers++;
}
for(int i = 1; i <= n - invers - 1; i++){
o << i << " ";
}
// dupa care scapam de inversiunile in plus
o << n + k - (invers* (invers + 1) / 2) << " ";
for(int i = n; i >= n - invers; i--){
if(i != n + k - (invers * (invers + 1) / 2)){
o << i << " ";
}
}
return 0;
}