Pagini recente » Cod sursa (job #2310361) | Cod sursa (job #3182697) | Cod sursa (job #915207) | Cod sursa (job #687231) | Cod sursa (job #2780785)
#include <bits/stdc++.h>
//#pragma GCC optimize("Ofast")
using namespace std;
ifstream fin("farfurii.in");
ofstream fout("farfurii.out");
long long ans[100001];
long long squareRoot(long long x)
{ long long l, r, mid;
l=0, r=100001;
while (l+1<r)
{ mid=(l+r)/2;
if (mid*(mid-1)/2>=x)
--r;
else
++l;
}
return r;
}
int main()
{ long long n, k, level, i, j, index, temp;
fin>>n>>k;
fin.close();
level=squareRoot(k);
for (i=1;i<=n-level;++i)
ans[i]=i;
for (j=n;j>n-level;--j, ++i)
ans[j]=i;
index=n-level+1+level*(level-1)/2-k;
temp=ans[index];
for (i=index;i>n-level+1;--i)
ans[i]=ans[i-1];
ans[n-level+1]=temp;
for (i=1;i<=n;++i)
fout<<ans[i]<<' ';
fout.close();
return 0;
}