您的位置:首页 > 编程语言 > Java开发

蓝桥杯 连续正整数的和

2018-03-28 20:49 176 查看
问题描述

78这个数可以表示为连续正整数的和,1+2+3,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

程序代码:

import java.util.Scanner;

public class Main {
public static void main(String args[]) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();//从键盘输入一个正整数n

for (int i = 1; i <= n; i++) {
int t = 0;

for (int j = i; j < n; j++) {
if (t > n)
break;
else if (t == n) {
System.out.println(i + " " + (j - 1));//输出第一个数和最后一个数
}
t = t + j;

}
}

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  蓝桥杯-java
相关文章推荐