用连续的自然数之和来表达整数 Python3

import sys
for line in sys.stdin:
	k=int(line)
	print('{}={}'.format(k,k))
	cnt=1
	n=2
	x=2*k+n-n*n
	while x>0:
		if x%(2*n)==0:
			l=x//(2*n)
			lt=list(range(l,l+n))
			print('{}={}'.format(k,'+'.join(map(str,lt))))
			cnt+=1
		n=n+1
		x=2*k+n-n*n
	print('Result:{}'.format(cnt))

输入

9
51

输出

9=9
9=4+5
9=2+3+4
Result:3
51=51
51=25+26
51=16+17+18
51=6+7+8+9+10+11
Result:4

全部评论

相关推荐

酷酷我灵儿帅:这去不去和线不线下面说实话没啥关系
点赞 评论 收藏
分享
程序员小白条:找的太晚,别人都是大三实习,然后大四秋招春招的,你大四下了才去实习,晚1年
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-07 11:35
程序员小白条:话太多,没实力和学历,差不多回答回答就行了,身份地位不一样
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

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