단어의 개수를 헤아리는 문제
공백이 연속으로 나올 수 없기에 공백에 대한 처리는 문자열의 맨 앞과 끝만 처리 하면 간단한 문제
#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
#include <string>
using namespace std;
int main()
{
string sentence;
bool firstSpace = false;
bool lastSpace = false;
int count = 0;
getline(cin, sentence);
if (sentence[0] == ' ')
firstSpace = true;
if (sentence[sentence.length() - 1] == ' ')
lastSpace = true;
for (int i = 0; i < sentence.length(); i++)
{
if (sentence[i] == ' ')
count++;
}
cout << count + 1 - firstSpace - lastSpace;
return 0;
}
2019-01-05 20:36:59에 Tistory에서 작성되었습니다.