主题:整数分解(givensum)
【问题描述】
一个正整数有可能可以被表示为n(n>=2)个连续正整数之和,如:
15=1+2+3+4+5
15=4+5+6
15=7+8
请编写程序,根据输入的任何一个正整数,找出符合这种要求的所有连续正整数序列。
【输入格式】
输入文件givensum.in包含一个正整数N(1<N<1010)。
【输出格式】
输出文件givensum.out第一行为整数k,表示解的组数,剩余k行每行两个数字,分别表示组成N的连续数字和的第一个正整数和最后一个正整数,而且k组解是按照各组解第一个正整数从小到大排列的;如果无解,则输出给定的正整数N。
【输入样例】
10000
【输出样例】
4
18 142
297 1328
388 412
1998 2002
一个正整数有可能可以被表示为n(n>=2)个连续正整数之和,如:
15=1+2+3+4+5
15=4+5+6
15=7+8
请编写程序,根据输入的任何一个正整数,找出符合这种要求的所有连续正整数序列。
【输入格式】
输入文件givensum.in包含一个正整数N(1<N<1010)。
【输出格式】
输出文件givensum.out第一行为整数k,表示解的组数,剩余k行每行两个数字,分别表示组成N的连续数字和的第一个正整数和最后一个正整数,而且k组解是按照各组解第一个正整数从小到大排列的;如果无解,则输出给定的正整数N。
【输入样例】
10000
【输出样例】
4
18 142
297 1328
388 412
1998 2002