📅 2025-07-29
사전에 알파벳 모음 'A', 'E', 'I', 'O', 'U'만을 사용하여 만들 수 있는, 길이 5 이하의 모든 단어가 수록되어 있습니다. 사전에서 첫 번째 단어는 "A"이고, 그다음은 "AA"이며, 마지막 단어는 "UUUUU"입니다.
단어 하나 word가 매개변수로 주어질 때, 이 단어가 사전에서 몇 번째 단어인지 return 하도록 solution 함수를 완성해주세요.
완전 탐색 문제이다. 알파벳 위치별 가중치를 더해 계산했다.
#include <string>
#include <vector>
#include <cmath>
using namespace std;
int solution(string word) {
int answer = 0;
vector<char> alphabet = {'A', 'E', 'I', 'O', 'U'};
// 각 알파벳별 단어 총 개수 781
// 5^0 + 5^1 + 5^2 + 5^3 + 5^4
for(int i=0; i<word.size(); i++)
{
for(int j=0; j<alphabet.size(); j++)
{
if(word[i] == alphabet[j])
{
int weight=0;
for(int n=0; n<5-i; n++)
{
weight += pow(5,n);
}
answer += weight*j + 1;
break;
}
}
}
return answer;
}
머티리얼 Translucent로 바꿀때마다 그놈의 나나이트 크래시
프로젝트 설정에서 Nanite 비활성화해야 블렌드모드를 바꿀 수 있다. ㅠㅠ