最后一个点说我第一行第一个数输出是1,但是我的代码里面从2开始分根本不可能出现1啊,请问是什么问题呢?
n=int(input())
k=2
while((k-1)*(k+2)<2*n):
k+=1
res=(k-1)*(k+2)//2-n
if res==1:
ans=1
for i in range(3,k):
ans*=i
print("{} ".format(i),end='')
ans*=k+1
print("{}\n{}".format(k+1,ans))
else:
ans=1
for i in range(2,res):
ans*=i
print("{} ".format(i),end='')
for i in range(res+1,k):
ans*=i
print("{} ".format(i),end='')
ans*=k
print("{}\n{}".format(k,ans))