코드
#include <string>
#include <vector>
using namespace std;
int solution(vector<string> babbling) {
int answer = 0; // 머쓱이의 조카가 발음할 수 있는 단어의 개수
for(auto s : babbling){
int usebabbling=0; // 조합해서 사용 가능 -> 사용한 발음 구분
bool check=true; // 머쓱이의 조카가 발음이 가능한 경우 true
for(int i=0;i<s.size();i++){
if(usebabbling!=1 && s.substr(i,3)=="aya"){ // aya -> 1
usebabbling=1;
i=i+2;
}else if(usebabbling!=2 && s.substr(i,2)=="ye"){ // ye -> 2
usebabbling=2;
i=i+1;
}else if(usebabbling!=3 && s.substr(i,3)=="woo"){ // woo -> 3
usebabbling=3;
i=i+2;
}else if(usebabbling!=4 && s.substr(i,2)=="ma"){ // ma -> 4
usebabbling=4;
i=i+1;
}else{
check=false; // 가능한 발음이 없는 경우 -> false
break;
}
}
if(check){ // 가능한 발음인 경우 true 유지 -> answer 값 카운트
answer++;
}
}
return answer;
}
'C++ > programmers 코딩테스트(level 1) C++' 카테고리의 다른 글
[C/C++] programmers Level 1 로또의 최고 순위와 최저 순위 (0) | 2023.10.18 |
---|---|
[C/C++] programmers Level 1 덧칠하기 (0) | 2023.10.18 |
[C/C++] programmers Level 1 [1차] 비밀지도 (0) | 2023.10.14 |
[C/C++] programmers Level 1 2016년 (0) | 2023.10.12 |
[C/C++] programmers Level 1 명예의 전당 (1) (0) | 2023.10.12 |