[Programmers]124カ国の数字
4128 ワード
私の答え
function solution(n) {
var answer = '';
while (n > 0) {
if (n % 3 === 0) {
answer = '4' + answer
n = n / 3 - 1;
} else if (n % 3 === 1) {
answer = '1'+ answer
n = Math.floor(n/3)
} else if (n % 3 === 2) {
answer = '2' + answer
n = Math.floor(n/3)
}
}
return answer;
/*
진수 변환에 대한 이해가 필요했다.
10진수를 3진수로 변환하는 과정을 먼저 풀어보았고
이를 응용해 문제에서는
n을 3으로 나눈 나머지 값을 이용해 각 자리 수를 얻어내었다.
-1을 해주지 않으면
불필요하게 한번더 while문이 돌아가서 오답이 나온다.
Math.floor 를 사용하지 않으면
0보다 계속 큰 상태가 되기 때문에 while 문이 끝나지 않는다.
*/
}
問題の説明
124カ国あります124カ国では、数字は10進数ではなく、以下の独自のルールで表されています.
124カ国には自然水しか存在しない.
124カ国では、すべての数字を表すときに1,2,4しか使用されません.
たとえば、124の国で使用される数値は、次のように変換されます.
10진법 124 나라 10진법 124 나라
1 1 6 14
2 2 7 21
3 4 8 22
4 11 9 24
5 12 10 41
自然数nをパラメータとして指定した場合、解関数を完了し、nを124カ国で使用した数値に置き換えた値を返します.せいげんじょうけん
nは50000000000以下の自然数である.
I/O例
n result
1 1
2 2
3 4
4 11
Reference
この問題について([Programmers]124カ国の数字), 我々は、より多くの情報をここで見つけました https://velog.io/@rhdgoehe2/Programmers-124-나라의-숫자テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol