蓝桥杯备战 Day 25 2022.4.1

蓝桥杯备战 Day 25 2022.4.1,第1张

试题 算法训练 连续正整数的和

资源限制

内存限制:256.0MB C/C++时间限制:1.0s Java时间限制:3.0s Python时间限制:5.0s

问题描述

  78这个数可以表示为连续正整数的和,1+2+3+...+12,18+19+20+21,25+26+27。



  输入一个正整数 n(<=10000)
  输出 m 行(n有m种表示法),每行是两个正整数a,b,表示a+(a+1)+...+b=n。



  对于多种表示法,a小的方案先输出。


样例输入

78

样例输出

1 12
18 21
25 27

 思路挺简单的,见代码吧

n = int(input())

ans = []

for i in range(1,n):
    count = i
    end = i
    while True:
        if count>n:
            break
        end += 1
        count += end
        if count == n:
            ans.append([i,end])
            break
        
    
for i in ans:
    print(i[0],i[1])
    

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/563137.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-02
下一篇 2022-04-02

发表评论

登录后才能评论

评论列表(0条)

保存