[백준] 1316. 그룹 단어 체커
Algorithm2021. 11. 16. 13:56
반응형
IDEA
1. 크기 26 int 배열(map)을 만들고
2. 단어 길이만큼 탐색
2-1 해당 단어에 map의 값이 1 이상이면, 이미 있었다는 뜻이므로, 그룹 단어가 아님
2-1-1 단, 한 글자 이전에 같은 글자가 있는 경우는 제외
2-1-2 그룹단어가 아니면 flag를 올림
2-2 map에 해당 글자가 있으면 1을 증가시킴
실수 ,,, 하나의 단어를 검사하고 map이랑 flag를 초기화하는 걸 놓침
int main(void)
{
string word;
int n;
int count = 0;
int flag = 0;
cin >> n;
for(int i=0; i<n; i++)
{
cin >> word;
vector<int> map(26);
flag = 0;
if(word.size() == 1) // 1글자일 경우
{
count++;
continue;
}
for(int k=1; k<word.size(); k++) //2글자 이상일 경우
{
map[word[k-1]-97] = 1;
if((word[k-1] != word[k])&&(map[word[k]-97] > 0)) //그룹단어가 아닌 경우
flag = 1;
}
if(flag == 0)
count++;
}
cout << count;
return 0;
}
반응형
'Algorithm' 카테고리의 다른 글
[Programmers] 소수만들기 (0) | 2021.11.17 |
---|---|
[백준] 1157. 단어 공부 (0) | 2021.11.16 |
[백준] 1159. 농구경기 (0) | 2021.11.15 |
[백준] 5822. 다이얼 (0) | 2021.11.15 |
[백준] 8958. OX퀴즈 (0) | 2021.11.15 |
댓글()