题解 | #尼科彻斯定理#

尼科彻斯定理

https://www.nowcoder.com/practice/dbace3a5b3c4480e86ee3277f3fe1e85

描述

验证尼科彻斯定理,即:任何一个整数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个连续奇数之和的形式输出。
数据范围:1\le m\le 100\1m100 
进阶:时间复杂度:O(m)\O(m) ,空间复杂度:O(1)\O(1) 


输入描述:

输入一个int整数

输出描述:

输出分解后的string

示例1

输入:
6
复制
输出:
31+33+35+37+39+41
复制


代码:
#对m为奇偶进行分类讨论,
#若为偶数则直接从m^2往两边跨奇数步得到所有的值,
#若为奇数则直接从m^2往两边跨偶数步得到所有值,m为奇数还要把m^2加上
#最后排序并转化为字符串输出即可
m=int(input())
m2=m*m
lst1=[]
if m%2==0:
    for i in range(1,m,2):
        lst1.append(m2-i)
        lst1.append(m2+i)
else:
    for i in range(2,m,2):
        lst1.append(m2-i)
        lst1.append(m2+i)
    lst1.append(m2)
lst1=sorted(lst1)

for i in range(len(lst1)):
    lst1[i]=str(lst1[i])
print("+".join(lst1))


#华为od#
全部评论

相关推荐

07-18 15:02
门头沟学院 Java
刚打开网申页面就不想填了,还是不要为难自己了
poppinzhan...:多益老行业毒瘤了,碰到徐波这种恶心的烂人,去了也是受罪。
点赞 评论 收藏
分享
zzzzhz:兄弟你先猛猛投简历至少三百家,能约到面试就去面。最近可以速成智能小车,智慧家居烂大街的项目,不需要自己写,只需要把里面的代码讲解看明白就行。把其中涉及到的八股文都拿出来单独背一下,我去年找工作就一个智能小车智慧家居找了10k差不多。
点赞 评论 收藏
分享
机械打工仔:有说的你怀疑一下就行了,直接问也太实诚了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务