#include <iostream>
using namespace std;
int main()
{
char word[101];
cin >> word;
int length = 0;
int i = 0;
while (word[i] != '\0')
{
length++;
if (word[i] == 'c')
{
if (word[i + 1] == '=' or word[i + 1] == '-')
i++;
}
else if (word[i] == 'd')
{
if (word[i + 1] == 'z' and word[i + 2] == '=')
i += 2;
else if (word[i + 1] == '-')
i++;
}
else if (word[i] == 'l')
{
if (word[i + 1] == 'j')
i++;
}
else if (word[i] == 'n')
{
if (word[i + 1] == 'j')
i++;
}
else if (word[i] == 's')
{
if (word[i + 1] == '=')
i++;
}
else if (word[i] == 'z')
{
if (word[i + 1] == '=')
i++;
}
i++;
}
cout << length;
}
처음 제출했을땐 i++
를 length++
로 썼었다.
그런데 이 방식은 'dz='와 'z='가 동시에 나왔을 때 중복된 값을 빼주지 않으면 틀릴 위험이 있었다.
또한 i++
는 문자열을 한번에 넘어가 중복된 값을 만날 일이 없기때문에 선택하였다.