본문 바로가기
백준 풀이

[백준/BOJ] - 1152번 c++ 풀이

by 반오십 코린이 2022. 11. 7.
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