题目描述:一个正整数有可能可以被表示为 n(n>=2) 个连续正整数之和,如:
15=1+2+3+4+5
15=4+5+6
15=7+8
请编写程序,根据输入的任何一个正整数,找出符合这种要求的所有连续正整数序列。
输入数据:一个正整数,以命令行参数的形式提供给程序。
输出数据:在标准输出上打印出符合题目描述的全部正整数序列,每行一个序列,每个序列都从该序列的最小正整数开始、以从小到大的顺序打印。如果结果有多个序列,按各序列的最小正整数的大小从小到大打印各序列。此外,序列不允许重复,序列内的整数用一个空格分隔。如果没有符合要求的序列,输出 “NONE” 。
例如,对于 15 ,其输出结果是:
1 2 3 4 5
4 5 6
7 8
对于 16 ,其输出结果是:
NONE
#include<stdio.h>
void Hanlder(int num)
{
int count=0;
for(int i=1;i<=num/2;i++)
{
int tmp=i;
int cur=i+1;
while(tmp<num)
{
tmp = tmp + cur;
cur = cur + 1;
if(tmp == num)
{
count=count+1;
for(int j=i;j<cur;j++)
printf("%d ",j);
printf("\n");
break;
//tmp=num+1;//for break
}
}
}
if(count==0)
printf("None\n");
}
int main(int argc,char** argv)
{
int input=5;
Hanlder(input);
getchar();
}
分享到:
相关推荐
Astar2007百度之星程序设计大赛网络资格赛(初赛) 题。 Astar2007百度之星程序设计大赛网络资格赛(初赛) 题 。
百度之星 2011 初赛 算法设计题 百度之星
Astar2006百度之星程序设计大赛题目参考源程序
百度之星程序设计大赛从2005到2010的初赛、复赛、决赛题目。
2012年百度之星初赛题目,仅供参考。有兴趣可以看看
2007年百度之星程序设计大赛复赛题目,应该可以帮助大家多了解一些大赛的出题规律
2005年百度之星程序设计大赛试题初赛题 ,适合热爱Java人士
对于2014年百度之星程序设计大赛迷宫问题的较为详尽的分析
百度之星-编程大赛初赛练习题 题目描述: 一个正整数有可能可以被表示为n(n>=2)个连续正整数之和,如:
2011微软校园之星初赛题目(原题),ATA合作院校参赛题。
2011年百度之星程序设计大赛初赛B,经典的题目,挑战的趣味,还在等什么?
2011百度之星试题合集,包括初赛A、B,复赛以及决赛,不含答案。
原理很简单:取max1,max2 然后分别存到2个不同的数组,之后对这2个数组进行排序后比大小就可以了;
2011年百度之星程序设计大赛初赛A试题,有难度,有挑战性!!!
百度之星2005-2007以及2011年的初赛复赛试题,文件为pdf文字版。
百度之星2009程序设计大赛 初赛第一场试题
2019年 百度之星大赛资料 包含初赛 复赛 题解答案 问题解答 .rar
百度之星试题,我也忘记是哪年的了。
初赛题目.zip