Pagini recente » Cod sursa (job #3361600) | Cod sursa (job #3357608) | Cod sursa (job #2303149) | Monitorul de evaluare | Cod sursa (job #3361601)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("farfurii.in");
ofstream fout("farfurii.out");
vector<int> ans;
bitset<100001> bt;
long long int n, k;
int main(){
fin >> n >> k;
for(int i = 1;i<=n;i++)
{
if(1LL * (n - i) * (n - i - 1) / 2 > k)ans.push_back(i);
else if(1LL * (n - i) * (n - i - 1)/2 <= k){ans.push_back(i + k - 1LL * (n - i) * (n - i - 1) / 2); break;}
//daca nr de perumutai 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;
}