По данному числу 1 ≤ n ≤ 10^9 найдите максимальное число k, для которого n можно представить как сумму k различных натуральных слагаемых. Выведите в первой строке число k, во второй — k слагаемых.
Sample Input 1:
4
Sample Output 1:
2
1 3
Sample Input 2:
6
Sample Output 2:
3
1 2 3
def calculation(n):
terms = []
a, b = 1, n - 1
while b > a:
terms.append(a)
a += 1
b = b - a
terms.append(n-sum(terms))
return terms
def main():
n = int(input())
result = calculation(n)
print(len(result))
print(' '.join(map(str, result)))
if __name__ == "__main__":
main()