SEO工具、SEO教程、SEM教程、SEO培训、SEO优化、SEO服务、SEM服务等方面的资料,让大家掌握更多搜索引擎优化、网站优化等方面的知识。

2008年11月25日星期二

连续正整数 算法实现

题目:

一个正整数有可能可以被表示为n(n>=2)个连续正整数之和,如:
15=1+2+3+4+5
15=4+5+6
15=7+8
请编写程序,根据输入的任何一个正整数,找出符合这种要求的所有连续正整数序列。
输入数据:一个正整数,以命令行参数的形式提供给程序。
例如,对于15,其输出结果是:
1 2 3 4 5
4 5 6
7 8
对于16,其输出结果是:
NONE




view plainprint?

1. #include
2.
3. static void getContinueNum(int);
4. static void output(int,int,int);
5.
6. void continueNumDemo()
7. {
8. getContinueNum(15);
9. }
10.
11. static void getContinueNum(int n)
12. {
13. int i;
14. int tmp;
15. int num;
16. num = 0;
17. for(i=2;i<=0)break;
20. if( tmp%(2*i)==0 ){
21. output(tmp/(2*i),i,n);
22. num ++;
23. }
24. }
25. if(num == 0){
26. printf("NONE");
27. }else{
28. printf("total:%d\n",num);
29. }
30. }
31.
3

没有评论:

关注者

博客归档