Pagini recente » Calcule | Kth Value | Profil Programmming | Cod sursa (job #3361224) | Cod sursa (job #3361600)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("farfurii.in");
ofstream fout("farfurii.out");
vector<int> ans;
bitset<100001> bt;
int n, k;
int main(){
fin >> n >> k;
for(int i = 1;i<=n;i++)
{
if((n - i) * (n - i - 1) / 2 > k)ans.push_back(i);
else if((n - i) * (n - i - 1)/2 <= k){ans.push_back(i + k - (n - i) * (n - i - 1) / 2); break;}
//daca nr de perumutari daca as pune descrescatoare numerele este mai mic trebuie sa intervin;
}
for(auto i : ans){
bt[i] = 1;
fout << i << " ";
}
for(int i = n;i>=1;i--)
if(bt[i] == 0)fout << i << " ";
return 0;
}