【循环题】while过滤
题目描述
输入若干个整数对 M,N
,对于每个数对,输出以这两个数为最大值和最小值的公差为 1
的等差数列。
注意,当输入整数对中,任意一个数为 0
或负整数时,立即停止输入,且该组数对无需作任何处理。
输入格式
输入共若干行,每行包含两个整数。
最后一行的两个整数中,至少有一个是非正整数。
输出格式
对于每组需作处理的数对,输出一个结果,每个结果占一行。
结果包含从最小值到最大值的数字序列以及数字序列各数字之和。
具体格式请参照输出样例。
数据范围
M,N≤100
样例
输入样例:
2 5
6 3
5 0
输出样例:
2 3 4 5 Sum=14
3 4 5 6 Sum=18
算法1
(暴力枚举) $O(n^2)$
blablabla
时间复杂度
参考文献
C++ 代码
#include <iostream>
using namespace std;
int main(){
int x,y,min,max;
while(cin >> x >> y,x > 0 && y > 0){
int sum=0;
if (x > y) {min = y,max = x;}
else {min = x,max = y;};
for(;min <= max;min ++){
cout << min << ' ';
sum += min;
}
cout << "Sum=" << sum <<endl;
}
return 0;
}
算法2
(暴力枚举) $O(n^2)$
blablabla
时间复杂度
参考文献
C++ 代码
blablabla