Cod sursa(job #2306216)
Utilizator | Data | 21 decembrie 2018 19:28:27 | |
---|---|---|---|
Problema | Farfurii | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva de probleme | Marime | 0.45 kb |
#include<fstream>
#include<cmath>
using namespace std;
ifstream cin("farfurii.in");
ofstream cout("farfurii.out");
long long n,k,l,sol[100005];
int main(){
cin>>n>>k;
l=0.5+sqrt(0.25+2*k);
for(int i=n-l+1,j=n;i<=n;i++,j--)
sol[i]=j;
for(int i=1;i<=n-l;i++)
sol[i]=i;
for(long long p=l*(l-1)/2+1,i=n;p<=k;p++,i--)
swap(sol[n-l],sol[i]);
for(int i=1;i<=n;i++)
cout<<sol[i]<<' ';
}