Pagini recente » Cod sursa (job #2792140) | Cod sursa (job #2352573) | Cod sursa (job #2577990) | Cod sursa (job #2128663) | Cod sursa (job #469970)
Cod sursa(job #469970)
#include <iostream>
#include <cstring>
#include <cstdio>
#include <algorithm>
using namespace std;
typedef long long ll;
#define N 100010
int n,now,pt;
ll k,sisa;
bool ok=0,used[N];
void open(){
freopen("farfurii.in","r",stdin);
freopen("farfurii.out","w",stdout);
}
int main(){
open();
scanf("%d%lld",&n,&k);
now=n;
for (int i=1;i<=n;i++){
if ((ll)(now-1)*(now-2)/2>=k){
if (ok) printf(" ");
ok=1;
now--;
pt=i;
used[i]=1;
printf("%d",i);
}
else break;
}
if (now){
pt++;
if (ok) printf(" ");
ok=1;
sisa=k-(now-1)*(now-2)/2;
printf("%d",pt+sisa);
used[pt+sisa]=1;
for (int i=n;i>=1;i--){
if (used[i]) continue;
if (ok) printf(" ");
ok=1;
printf("%d",i);
}
printf("\n");
}
//system("pause");
return 0;
}