[Programmers] Level2 : 모음사전
Question
Solution
- 완전탐색으로 모든 문자에 대해 순서를 매기고 target과 일치하는 문자를 answer에 대입해준다.
Cord
#include <iostream>
#include <string>
#include <vector>
using namespace std;
int answer, cnt;
// 완전탐색 (모든 문자에 대해 순서를 매김)
void dfs(string curr, string target, char alpha[])
{
if (curr == target) { answer = cnt; } // 타겟과 같아지면 answer에 대입
if (curr.length() > 5) { return; }
++cnt;
for (int i = 0; i < 5; ++i)
{
dfs(curr + alpha[i], target, alpha);
}
}
int solution(string word)
{
char alpha[5] = { 'A', 'E', 'I', 'O', 'U' };
dfs("", word, alpha);
return answer;
}