Pagini recente » Cod sursa (job #890480) | Cod sursa (job #902219) | Cod sursa (job #2530175) | Cod sursa (job #1504081) | Cod sursa (job #69617)
Cod sursa(job #69617)
/*
100 p
*/
#include<stdio.h>
long long n,k;
int main()
{
long long i,m,p;
freopen("farfurii.in","r",stdin);
freopen("farfurii.out","w",stdout);
scanf ("%lld %lld",&n,&k);
for (p=1; p<n; p*=2);
for (m=0; p>0; p/=2)
if (m+p<=n && (m+p)*(m+p-1)<=2*k) m+=p;
k-=m*(m-1)/2;
if (!k)
{
for (i=1; i<=n-m; i++) printf("%lld ",i);
for (i=n; i>m-m; i--) printf("%lld ",i);
putchar('\n'); }
else
{
k=m-k; m++;
for (i=1; i<=n-m; i++) printf("%lld ",i);
printf("%lld ",n-k);
for (i=n; i>n-k; i--) printf("%lld ",i);
for (i=n-k-1; i>n-m; i--) printf("%lld ",i);
putchar('\n');
}
return 0;
}