输入一个正数n,输出所有和为n连续正数序列
来源:互联网 发布:马自达3星骋轮毂数据 编辑:程序博客网 时间:2024/04/26 08:01
输入一个正数n,输出所有和为n连续正数序列。例如输入15,由于1+2+3+4+5=4+5+6=7+8=15,所以输出3个连续序列1-5、4-6和7-8
具体代码如下:
#include "stdafx.h"#include<list> #include<iostream> using namespace std; //函数功能 : 打印满足条件的连续序列//函数参数 : begin为开始,end为结束,左闭右开区间//返回值 : 无void PrintSequence(unsigned begin, unsigned end){for(unsigned i = begin; i < end; i++)cout<<i<<' ';cout<<endl;}//函数功能 : 输出所有和为n连续正数序列//函数参数 : n为整数//返回值 : 无void FindTargetSequence(unsigned n){if(n < 3) //必须是2个连续数之和,n必须大于等于3return ;unsigned low = 1;unsigned high = 2;unsigned middle = n / 2;unsigned sum = 1;while(low <= middle) //只需考虑一半元素即可{if(sum == n) //满足条件PrintSequence(low, high);if(sum < n) //不够,说明还需要再加{sum += high;high++;}else //够了,说明要减一点{sum -= low;low++;}}}int main() { /*int sum, n; cout << "请输入你要等于多少的数值sum:" << endl; cin >> sum; cout << "请输入你要从1.....n数列中取值的n:" << endl; cin >> n; cout << "所有可能的序列,如下:" << endl; find_factor(sum,n); */FindTargetSequence(15);system("pause");return 0; }
- 输入一个正数n,输出所有和为n连续正数序列。
- 输入一个正数n,输出所有和为n连续正数序列。
- 输入一个正数n,输出所有和为n 连续正数序列
- 输入一个正数 n,输出所有和为 n 的连续正数序列 [No. 25]
- 【每日面试题】输入一个正数n,输出所有和为n连续正数序列
- 输入一个正数n,输出所有和为n连续正数序列
- 输入一个正数 n,输出所有和为n 连续正数序列。
- 输入一个正数n,输出所有和为n连续正数序列。
- 输入一个正数 n,输出所有和为 n 连续正数序列。
- 输入一个正数n,输出所有和为n连续正数序列
- 输入一个正数n,输出所有和为n连续正数序列。
- 算法习题51:输入一个正数n,输出所有和为n连续正数序列
- 输入一个正数n,输出所有和为n 连续正数序列
- 输入一个正数n,输出所有和为n 连续正数序列
- 输入一个正数n,输出所有和为n的连续正数序列
- 【算法学习-01】 输入一个正数 n,输出所有和为 n 连续正数序列。
- 网易面试题 输入一个正数n,输出所有和为n连续正数序列
- 输入一个正数n,输出所有和为n连续正整数序列
- naoqi摄像头的调用程序(基于naosim模拟器)
- android优化实战(一)-从递归到迭代
- poj 3278( 搜索 )
- php小知识 - 开启短标记支持
- VAVA:那些年,我们一起追过的ZERO
- 输入一个正数n,输出所有和为n连续正数序列
- 【记录】主界面
- Creating threads in Java
- bsnmp freebsd mrtg 安裝
- Selenium中被误用的XPath
- 第13周-任务2-动物怎么叫?——好玩中理解抽象类
- unlikely和likely
- ArtDialog简单使用示例
- ObjectInputStream与ObjectOutputStream的顺序问题