https://www.acmicpc.net/problem/11024
문자열 입력에 대해 익힐 수 있는 문제다.
cin.ignore() 를 통해 첫 줄 이후의 개행문자를 안전하게 제거해준다.
getline(cin, 문자열) 을 통해 공백이 포함된 문자열을 한번에 입력받을 수 있다.
stringstream ss(문자열) 은 해당 문자열을 stream(입력 버퍼)처럼 다루겠다는 뜻이다. 해당 문자열을 cin처럼 쓸 수 있게 변환해준다. 따라서 다음 줄에서 ss >> n 을 통해 문자열에서 문자를 하나씩 순서대로 꺼낼 수 있게 된다.
#include <iostream>
#include <sstream>
#include <string>
using namespace std;
int main() {
int t;
cin >> t;
cin.ignore();
for (int i = 0; i < t; i++) {
string nums;
getline(cin, nums);
stringstream ss(nums);
int n, count = 0;
while (ss >> n) {
count += n;
}
cout << count << endl;
}
return 0;
}