내가 작성한 코드
#include <iostream>
#include <vector>
#include <sstream>
using namespace std;
int main() {
string s;
string temp;
vector<string> v;
getline(cin, s);
stringstream ss(s);
while (getline(ss, temp, ' ')) {
if (temp != "") {
v.push_back(temp);
}
}
cout << v.size() << endl;
return 0;
}
입력받은 개수를 출력해야 하는 문제여서 표준입력 cin으로 입력을 받게되면 공백기준으로 끊어 받기때문에 getline()으로 EOF까지 받아주었다.
getline()으로 입력받은 문자열의 앞 뒤의 공백을 제거하여 구현할 수 있었지만, stringsream을 사용하여 vector와 함께 쓰고 싶은 마음에 이렇게 구현하였다.