728x90
1. 공백이 나오는 경우
2. 앞에 공백이 나오는 경우
3. 맨뒤 공백이 나오는 경우
4. 공백은 연속적으로 나오지 않는다.
--> 띄어쓰기 기준으로 카운트를 해준 다음
맨 뒤 공백이 나오는 경우와 맨 앞 공백이 없는 경우를 예외 처리 해주었다.
#include<iostream>
#include<string>
using namespace std;
int main() {
int final = 0;
string str;
getline(cin, str);
for (int i = 0; i < str.length(); i++) {
if (str[i] == ' ') //공백 일때
final += 1;
}
//문자열이 공백이 아니고 맨 첨에 뭔가가 있을때
if (str.length() != 0 && str[0] != ' ')
final++; // 마지막 단어
if (str[str.length() - 1] == ' ') //맨끝 공백
final--;
cout << final;
return 0;
}
728x90
'백준 풀이' 카테고리의 다른 글
[백준/BOJ] - 2908번 c++ 풀이 (0) | 2022.11.10 |
---|---|
[백준/BOJ] - 2675번 c++ 풀이 (0) | 2022.11.09 |
[백준/BOJ] - 1546번 c++ 풀이 (0) | 2022.11.08 |
[백준/BOJ] - 1157번 c++ 풀이 (0) | 2022.11.02 |
[백준/Python3] 2738번 - 행렬 덧셈 (0) | 2022.07.24 |