[プログラマ]3進法の反転
10進数を3進数に変換し、10進数に変換する問題.
ex) n = 45
=>45を3進数に変換する場合1200
=>1200のビット数を0021に反転
=>3進数21を10進数7に変換
私の首都コード)十進数nは三進数になる. nを3で割った残りの部分はアレイにシフトしない. 3に分割されたnのシェアをnに再記憶する. nが3未満になるまで、文を繰り返します.
私の草 複文が終了すると、現在のnは配列に移動しません. の3進数からなるアレイは、10進数 に変換される.に配列された最初の要素は1桁、2番目の要素は10桁...はい. は、の結果を返します. マイコード)
糸を解いた人もたくさんいました.(reduce賛美)
#新学の方法 Array.prototype.逆方向():並べ替え順序を反転
正式な書類 Number.prototype.toString(n):番号をn進数Stringタイプに戻す
正式な書類 Number.parseInt(String,基数):文字列パラメータをグループ化することで、特定の進数の整数(数値に基づく進数)を返します.
正式な書類
parseIntの2番目のパラメータ(option)は現在の数の整数を知ることができる
parseInt('21', 3)//dispaly 7
<2進数21を10進数に変換!>
ex) n = 45
=>45を3進数に変換する場合1200
=>1200のビット数を0021に反転
=>3進数21を10進数7に変換
私の首都コード)
私の草
function solution(n) {
let arr = [];
let result = 0;
while(n >= 3){
arr.unshift(n % 3);
n = parseInt(n / 3);
};
arr.unshift(n);
for(let i = 0; i < arr.length; i++){
result = result + arr[i]*(3**i);
}
return result;
}
結果を確認した後、他の人の回答を見ました.糸を解いた人もたくさんいました.(reduce賛美)
#新学の方法
正式な書類
正式な書類
正式な書類
parseIntの2番目のパラメータ(option)は現在の数の整数を知ることができる
parseInt('21', 3)//dispaly 7
<2進数21を10進数に変換!>
Reference
この問題について([プログラマ]3進法の反転), 我々は、より多くの情報をここで見つけました https://velog.io/@dlawjdghks11/3진법-뒤집기テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol