[프로그래머스 C++] 모음사전
[프로그래머스 C++] 모음사전
https://school.programmers.co.kr/learn/courses/30/lessons/84512/solution_groups?language=cpp
해결전략
문자열
5진법
정답 코드
#include <string>
#include <vector>
using namespace std;
int solution(string word) {
// 각 알파벳 별 가중치 (5^4 ~ 5^0)
// nums[]는 각 자리수에 따른 'A', 'E', 'I', 'O', 'U'의 가중치
// 예를 들어, 첫 번째 자리가 A 다음으로 E가 오려면 A로 만들 수 있는 모든 조합을 거쳐야 하므로 E의 가중치는 5^4.
vector<int> nums = {781, 156, 31, 6, 1};
string vowels = "AEIOU"; // 모음 문자열
int answer = word.length();//최소로 들어갈 값은 문자열의 길이. 왜냐하면 사전에서 어떤 단어든 그 길이만큼은 최소한 순서에 포함되기 때문
for(int i=0; i<word.length(); i++) { // 입력받은 단어의 각 문자를 순회
for(int j=0; j<vowels.length(); j++) { // 모음 문자열을 순회
if(word[i] == vowels[j]) {
answer += nums[i]*j;
/*
해당 문자가 사전에서 몇 번째 위치하는지 계산하여 결과값에 더해주는 부분
만약 현재 확인하는 단어의 철자가 사전에서 n번째라면,
그 철자가 나올 수 있는 경우의 수(nums[i])와 n(j)을 곱한 값을 결과값에 더한다.
*/
}
}
}
return answer;
}
'⭐ 코딩테스트 > 프로그래머스' 카테고리의 다른 글
[프로그래머스 C++] 섬 연결하기 (0) | 2023.10.18 |
---|---|
[프로그래머스 C++] 스킬트리 (0) | 2023.10.17 |
[프로그래머스 C++] 땅따먹기 (0) | 2023.10.13 |
[프로그래머스 C++] 방문 길이 (0) | 2023.10.12 |
[프로그래머스 C++] 뒤에 있는 큰 수 찾기 (0) | 2023.10.10 |
댓글
이 글 공유하기
다른 글
-
[프로그래머스 C++] 섬 연결하기
[프로그래머스 C++] 섬 연결하기
2023.10.18 -
[프로그래머스 C++] 스킬트리
[프로그래머스 C++] 스킬트리
2023.10.17 -
[프로그래머스 C++] 땅따먹기
[프로그래머스 C++] 땅따먹기
2023.10.13 -
[프로그래머스 C++] 방문 길이
[프로그래머스 C++] 방문 길이
2023.10.12