전체 코드
#include <iostream>
int main()
{
char s[16];
int idx = 0, sec = 0;
std::cin >> s;
while (s[idx] != '\0')
{
if (s[idx] == 'A' || s[idx] == 'B' || s[idx] == 'C')
{
sec += 2;
}
else if (s[idx] == 'D' || s[idx] == 'E' || s[idx] == 'F')
{
sec += 3;
}
else if (s[idx] == 'G' || s[idx] == 'H' || s[idx] == 'I')
{
sec += 4;
}
else if (s[idx] == 'J' || s[idx] == 'K' || s[idx] == 'L')
{
sec += 5;
}
else if (s[idx] == 'M' || s[idx] == 'N' || s[idx] == 'O')
{
sec += 6;
}
else if (s[idx] == 'P' || s[idx] == 'Q' || s[idx] == 'R'|| s[idx] == 'S')
{
sec += 7;
}
else if (s[idx] == 'T' || s[idx] == 'U' || s[idx] == 'V')
{
sec += 8;
}
else if (s[idx] == 'W' || s[idx] == 'X' || s[idx] == 'Y' || s[idx] == 'Z')
{
sec += 9;
}
sec++;
idx++;
}
std::cout << sec;
}
풀이
- char 배열 선언, 단어는 15글자 들어가고, '\0'이 글자끝에 항상 들어가는것을 고려해서 다음과 같이 선언
char s[16];
- '\0'을 만날때까지 반복하는 반복문
- if문에 해당글자에 따른 숫자를 sec 변수에 더함
- 항상 해당작업은 1초씩 더 걸린다 했으므로 다음 반복문으로 넘어가기전에 sec 변수에 1을 더함
- 다음 값 검사를 위해 인덱스를 1 더함
while (s[idx] != '\0')
{
if (s[idx] == 'A' || s[idx] == 'B' || s[idx] == 'C')
{
sec += 2;
}
else if (s[idx] == 'D' || s[idx] == 'E' || s[idx] == 'F')
{
sec += 3;
}
else if (s[idx] == 'G' || s[idx] == 'H' || s[idx] == 'I')
{
sec += 4;
}
else if (s[idx] == 'J' || s[idx] == 'K' || s[idx] == 'L')
{
sec += 5;
}
else if (s[idx] == 'M' || s[idx] == 'N' || s[idx] == 'O')
{
sec += 6;
}
else if (s[idx] == 'P' || s[idx] == 'Q' || s[idx] == 'R'|| s[idx] == 'S')
{
sec += 7;
}
else if (s[idx] == 'T' || s[idx] == 'U' || s[idx] == 'V')
{
sec += 8;
}
else if (s[idx] == 'W' || s[idx] == 'X' || s[idx] == 'Y' || s[idx] == 'Z')
{
sec += 9;
}
sec++;
idx++;
}