フリップバイナリ


https://programmers.co.kr/learn/courses/30/lessons/68935
😱 さんしんどうほう삼진법에서는 0, 1, 2의 합계 3개의 숫자를 사용하고, 3을 10, 4를 11…으로 표기한다. 3마다 자릿수가 올라가므로(...)
function solution(n){
    return parseInt(n.toString(3).split('').reverse().join(''), 3)
}

console.log(solution(45), typeof(solution(45)))

  • nをバイナリn.toString(3) に変更1200 string.toString()は文字列を返します.
    数値およびBigIntの場合、toString()はパラメータとして基数を選択的に使用します.基数の値は最低2~36です.
    10進数(1,2,3,4,5...)を基数で異なる整数に変換できます.次に、10進数を2進数に変換する例を示します.
    let baseTenInt = 10;
      console.log(baseTenInt.toString(2));
      // "1010" 10을 이진수로
    big integersもそうです
    let bigNum = BigInt(20);
      console.log(bigNum.toString(2));
      // "10100" 20을 이진수로

  • 返された文字を配列に配置し、.split('') を区切り記号「」で区切ります.[ '1', '2', '0', '0' ] object

  • 配列内で文字列を反転する.reverse()[ '0', '0', '2', '1' ] object

  • 区切り記号""に基づいて文字列.join()を作成0021 stringjoin()配列のすべての要素を接続し、文字列を形成します.
    separator Optional
    配列内の各要素を区別する文字列を指定します.必要に応じて、この区切り文字は文字列に変換されます.省略すると、配列内の要素はカンマで区切られます.
    separatorが空の文字列の場合、すべての要素の間に文字はありません.join() // 0,0,2,1 string join('') // 0021 string

  • 3進0021を10進整数parseInt('0021', 3) // 7 numberに戻す
    parseInt()
    語句
    parseInt(string, radix)
    パラメータ
    文字列グループの値.
    radix *Optional
    stringの整数を表す2から36の整数.
    注意!!!デフォルトは10ではありません.
    数値タイプでない場合は、数値に変換されます.
    戻り値
    指定された文字列にグループ化された整数