Pagini recente » Cod sursa (job #2360261) | Cod sursa (job #2948307) | Cod sursa (job #2349435) | Cod sursa (job #2386299) | Cod sursa (job #2899931)
#include <fstream>
using namespace std;
ifstream fin("farfurii.in");
ofstream fout("farfurii.out");
const int dim = 1e5 + 2;
int main() {
int n, k, v[dim], dp = 0, old_dp, j, aux;
fin >> n >> k;
aux = n;
for(j = 1; j <= n && dp <= k; j++) old_dp = dp, dp += j;
for(int i = 1; i <= n; i++)
if( i <= n - j + 1)
v[i] = i;
else v[i] = aux--;
k -= old_dp;
int st = n - j + 1, dr = n;
while( k ) {
swap(v[st], v[dr--]);
--k;
}
for(int i = 1; i <= n; i++) fout << v[i] << ' ';
return 0;
}