题目描述
验证尼科彻斯定理,即:任何一个整数m的立方都可以写成m个连续奇数之和。
例如:
1^3=1
2^3=3+5
3^3=7+9+11
4^3=13+15+17+19
输入一个正整数m(m≤100),将m的立方写成m个连续奇数之和的形式输出。
本题含有多组输入数据。
输入描述:
输入一个int整数
输出描述:
输出分解后的string
示例1
输入
6
输出
31+33+35+37+39+41
解题分析:
根据给出的示例可以发现(第一个奇数的规律):
1^3=1 //1^3 = (1*(1-1)+1)
2^3=3+5 //2^3 = (2*(2-1)+1)+5
3^3=7+9+11 //3^3 = (3*(3-1)+1)+9+11
4^3=13+15+17+19 //4^3 = (4*(4-1)+1)+15+17+19
代码实现如下:
lists = []
while True:
try:
input1 = input()
lists.append(int(input1))
except:
break
#遍历正整数
for i in lists:
print_dates = []
if i <= 100 and i >0:
first = i*(i-1)+1
for i in range(i):
print_dates.append(first)
first = first +2
str1 = [str(j) for j in print_dates]
str2 = '+'.join(str1)
print(str2)