Pagini recente » Cod sursa (job #2287211) | Cod sursa (job #2222801) | Cod sursa (job #42920) | Cod sursa (job #9180) | Cod sursa (job #183154)
Cod sursa(job #183154)
//farfurii v1.4
#include <stdio.h>
#define MAXN 100005
char S[MAXN*8]; int p=0;
inline void add(int x)
{
char s[8]; int i=0;
while (x)
{
s[i++]=x%10+'0';
x/=10;
}
S[p++]=' ';
for (i=i-1; i>=0; --i, ++p)
S[p]=s[i];
}
int main()
{
freopen("farfurii.in","r",stdin);
freopen("farfurii.out","w",stdout);
int n=0,m=0,i,t2,cnst;
long long ml=0,t=0,k=0;
scanf("%d%lld",&n,&k); t=2*k;
for (ml=2; ml*(ml-1)<=t; ++ml);
ml--; m=(int)ml; cnst=n-m;
if (ml*(ml-1)==k<<1)
{
for (i=1; i<=cnst; ++i)
add(i);
for (i=n; i>cnst; --i)
add(i);
}
else
{
t2= n-( (ml+1)*ml/2-k );
for (i=1; i<cnst; ++i)
add(i);
add(t2);
for (i=n; i>=cnst; --i)
if (i-t2)
add(i);
}
puts(S+1);
fclose(stdin);
fclose(stdout);
return 0;
}