输入输出
答案参考本文最后
C++
单行不定长输入
while(cin >> x, cin.get() != '\n')
非字符串多行输入
while(n--)
while(cin >> a >> b)
while(cin >> a >> b, a || b)
字符串多行输入
#include <iostream> // 标准输入输出
#include <string>
#include <sstream> // 输入流
string s;
while(getline(cin, s)) // 空白符分隔的不定行输入
{
stringstream line(s);
while(line >> s)
}
while(getline(cin, s)) // 逗号分隔的不定行输入
{
stringstream line(s);
while(getline(line, s, ','))
}
cin
可用作条件判断
cin >> n
返回cin
getline(cin, s)
返回cin
Python
多行输入
python 输入都是 str 类型, 根据需要用 map 进行批量类型转换
# 定行输入
for _ in range(int(input())):
l = list(map(int, input().split()[::]))
# 不定行输入
import sys
for line in sys.stdin.readlines()[::]:
l = list(map(int, line.split()[::]))
for line in sys.stdin:
l = line.strip().split(',') # 非空白符分隔时先把前后空白符去掉(主要是换行符)
input()
返回str
split()
返回list
map()
返回iterator
代码参考
C++
A
#include <iostream>
using namespace std;
int main()
{
int a, b;
while(cin >> a >>b)
cout << a + b << endl;
return 0;
}
B
#include <iostream>
using namespace std;
int main()
{
int a, b, n;
cin >> n;
while(n--)
{
cin >> a >> b;
cout << a + b << endl;
}
return 0;
}
C
#include <iostream>
using namespace std;
int main()
{
int a, b;
while(cin >> a >> b, a || b)
cout << a + b << endl;
return 0;
}
D
#include <iostream>
using namespace std;
int main()
{
int n;
while(cin >> n, n)
{
int x, sum = 0;
while(n--) cin >> x, sum += x;
cout << sum << endl;
}
return 0;
}
E
#include <iostream>
using namespace std;
int main()
{
int t, n;
cin >> t;
while(t--)
{
int x, sum = 0;
cin >> n;
while(n--) cin >> x, sum += x;
cout << sum << endl;
}
return 0;
}
F
#include <iostream>
using namespace std;
int main()
{
int n;
while(cin >> n)
{
int x, sum = 0;
while(n--) cin >> x, sum += x;
cout << sum << endl;
}
return 0;
}
G
#include <iostream>
#include <string>
#include <sstream>
using namespace std;
int main()
{
string s;
while(getline(cin, s))
{
int x, sum = 0;
stringstream line(s);
while(line >> x) sum += x;
cout << sum << endl;
}
return 0;
}
H
#include <iostream>
#include <string>
#include <algorithm>
using namespace std;
int main()
{
int n;
cin >> n;
string s[n];
for(int i = 0; i < n; i++) cin >> s[i];
sort(s, s + n);
for(int i = 0; i < n; i++) cout << s[i] << ' ';
return 0;
}
I
#include <iostream>
#include <string>
#include <algorithm>
#include <vector>
#include <sstream>
using namespace std;
int main()
{
string s;
while(getline(cin, s))
{
stringstream line(s);
vector<string> arr;
while(line >> s) arr.push_back(s);
sort(arr.begin(), arr.end());
for(auto &t : arr) cout << t << ' ';
cout << endl;
}
return 0;
}
J
#include <iostream>
#include <string>
#include <algorithm>
#include <vector>
#include <sstream>
using namespace std;
int main()
{
string s;
while(getline(cin, s))
{
stringstream line(s);
vector<string> arr;
while(getline(line, s, ',')) arr.push_back(s);
sort(arr.begin(), arr.end());
for(int i = 0; i < arr.size(); i++)
{
cout << arr[i];
if(i != arr.size() - 1) cout << ',';
}
cout << endl;
}
return 0;
}
Python
A
import sys
for line in sys.stdin:
print(sum(map(int, line.split())))
B
for _ in range(int(input())):
print(sum(map(int, input().split())))
C
import sys
for line in sys.stdin.readlines()[:-1]:
print(sum(map(int, line.split())))
D
import sys
for line in sys.stdin.readlines()[:-1]:
print(sum(map(int, line.split()[1:])))
E
for _ in range(int(input())):
print(sum(map(int, input().split()[1:])))
F
import sys
for line in sys.stdin:
print(sum(map(int, line.split()[1:])))
G
import sys
for line in sys.stdin:
print(sum(map(int, line.split())))
H
input()
print(' '.join(sorted(input().split())))
I
import sys
for line in sys.stdin:
print(' '.join(sorted(line.split())))
J
import sys
for line in sys.stdin:
print(','.join(sorted(line.strip().split(','))))