一、例1:逐行计算数字的和
输入描述:
输入数据有多组, 每行表示一组输入数据。
每行不定有n个整数,空格隔开。(1 <= n <= 100)。
输出描述:
每组数据输出求和的结果
输入例子:
1 2 3 4 5 0 0 0 0 0
输出例子:
6 9 0
代码:
#include <bits/stdc++.h>
using namespace std;
int main(void) {
int num = 0, sum = 0;
while(cin >> num) {
sum += num;
if (getchar() == '\n') {
cout << sum << endl;
sum = 0;
}
}
return 0;
}
二、例2:逐行字符串排序,输入以空格分隔
输入描述:
多个测试用例,每个测试用例一行。
每行通过空格隔开,有n个字符,n<100
输出描述:
对于每组测试用例,输出一行排序过的字符串,每个字符串通过空格隔开
输入例子:
a c bb f dddd nowcoder
输出例子:
a bb c dddd f nowcoder
代码:
#include <bits/stdc++.h>
using namespace std;
int main(void) {
string temp;
set<string> ss;
while (cin >> temp) {
ss.insert(temp);
if (getchar() == '\n') {
for (auto iter : ss) {
cout << iter.data() << " ";
}
cout << endl;
ss.clear();
}
}
return 0;
}
三、例3:逐行字符串排序,输入以逗号分隔
输入描述:
多个测试用例,每个测试用例一行。 每行用’,'隔开,有n个字符,n<100
输出描述:
对于每组用例输出一行排序后的字符串,用’,'隔开,无结尾空格
输入例子:
a,c,bb f,dddd nowcoder
输出例子:
a,bb,c dddd,f nowcoder
代码:
#include <bits/stdc++.h>
using namespace std;
int main(void) {
string line, temp, res;
set<string> ss;
while(cin >> line) {
stringstream stm(line);
while(getline(stm, temp, ',')) {
ss.insert(temp);
}
for (auto iter : ss) {
res += iter.data();
res += ',';
}
res.pop_back();
cout << res << endl;
res.clear();
ss.clear();
}
return 0;
}
|