코드
#include <iostream>
#include <string>
#include <map>
int main()
{
std::map<char, int> checkMap; // 단어 개수 계산용 맵
int N;
int count = 0;
bool Groupcheck = false;
std::cin >> N;
for (int i = 0; i < N; i++)
{
std::string word;
std::string midword="";
std::cin >> word;
midword += word[0]; // 비교를 위해 첫 인덱스 값은 넣어줌
// 연속해서 붙는 문자 거르기 용
for (int j = 1; j < word.size(); j++)
{
if (midword[midword.size()-1] != word[j])
{
midword += word[j];
}
}
// 걸러진 문자열에서 문자의 개수가 1보다 큰 경우 -> 그룹 단어가 아니다.
for (int i = 0; i < midword.size(); i++)
{
checkMap[midword[i]]++;
if (checkMap[midword[i]] > 1)
{
Groupcheck = true;
break;
}
}
// 그룹 단어가 확인될 경우만 카운트 증가
if (false == Groupcheck)
{
++count;
}
Groupcheck = false;
checkMap.clear(); // 한 사이클 맵정리
}
std::cout << count;
checkMap.clear(); // 최종 맵 정리
}
'C++ > 백준 C++' 카테고리의 다른 글
[C/C++] 백준 2566번 최댓값 (0) | 2024.05.29 |
---|---|
[C/C++] 백준 25206번 너의 평점은 (0) | 2024.05.29 |
[C/C++] 백준 10811번 바구니 뒤집기 (0) | 2024.05.28 |
백준 C++ 10810 공 넣기 (0) | 2024.01.24 |
[C/C++] 백준 31009번 진주로 가자! (Easy) (0) | 2023.12.27 |