프로그래머스/프로그래머스 Lv2
프로그래머스 / 연습문제 / 124 나라의 숫자
ENUM01
2020. 6. 17. 10:10
https://programmers.co.kr/learn/courses/30/lessons/12899
코딩테스트 연습 - 124 나라의 숫자
124 나라가 있습니다. 124 나라에서는 10진법이 아닌 다음과 같은 자신들만의 규칙으로 수를 표현합니다. 124 나라에는 자연수만 존재합니다. 124 나라에는 모든 수를 표현할 때 1, 2, 4만 사용합니다.
programmers.co.kr

|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
#include <string>
#include <vector>
using namespace std;
string solution(int n) {
string answer = "";
//넣을 문자열
string numArray[3] = { "4","1","2" };
//나머지
int remainder;
while (true)
{
//현재 숫자 n을 3으로 나눈 나머지를 구한다.
remainder = n % 3;
//n을 3으로 나눈다.
n = n / 3;
//나머지가 0일 경우, n에서 1을 빼준다.
//이렇게 하지 않을 경우 while문이 한번 더 돌아서 answer 앞에 4가 붙게 된다.
if (remainder == 0)
{
n--;
}
//나누어 떨어지면 4, 아닐 경우 해당 숫자를 answer 문자열 앞에 더해준다.
answer = numArray[remainder] + answer;
//n이 0일 경우 빠져나온다.
if(n==0)break;
}
return answer;
}
|