[프로그래머스]124 나라의 숫자(C++)
🤔문제 해석
모든 수를 표현할 때 1,2,4만 사용한다.
자연수 n이 매개변수로 주어질 때, n을 124나라에서 사용하는 숫자로 바꾼 값을 return하는 solution 함수를 완성시켜라.
😏풀이
n진수와는 완전히 다른 방법의 숫자 매김방식.
처음부터 1,2,4를 번갈아가며 사용한다.
알아보기 쉽게 n을 share에 저장해둔다.
숫자 3개가 번갈아 순서대로 나오므로 %3을 하여 remainder에 저장한다.
그리고 share를 3으로 나눠준다.
remainder가 0일 때 answer 앞에 "4"를 붙여주고 share--를 해준다.
remainder가 1 또는 2일 때, answer 앞에 "1","2"를 붙여준다.
이 과정을 while문으로 주어진 n값이 0이 될 때까지 계속 반복한다.
그 결과로 나온 answer값이 정답이다.
💻코드
#include <string>
#include <vector>
using namespace std;
string solution(int n) {
string answer = "";
int share = n;
int remainder = -1;
while (share != 0) {
remainder = share % 3;
share = share / 3;
if (remainder == 0) { //나누어 떨어질 경우 몫을 1빼준다.
answer = "4" + answer;
share--;
}
else if (remainder == 1) {
answer = "1" + answer;
}
else if (remainder == 2) {
answer = "2" + answer;
}
}
return answer;
}
Author And Source
이 문제에 관하여([프로그래머스]124 나라의 숫자(C++)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@yr4528/프로그래머스124-나라의-숫자C저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)