Programers:124カ国/地域の数字


124カ国の数字


  • 初めて見て慌てました.しかし、keypointは最終的に3つに表現される:
  • をすると、3に分けたとき、残りの数が0になったときだけ、私はそれに気づいた.
    -->例外処理は、残りが0の場合のみ行います.
  • 配列をわざわざ作らなくても、使いやすい方法を見つけました!
  •   /* "412"[b] 이부분은 진짜 신박한 방법; */
      answer = "412"[b] + answer;

    コード#コード#

    #include <string>
    #include <vector>
    
    using namespace std;
    
    string solution(int n) {
        string answer = "";
        int b;
        while(n != 0)
        {
            b = n%3; // 나머지
            n = n/3; // 몫
            /* 나머지가 0일 경우에 몫을 하나 깎으면 해결됨! */
            if(b == 0){ 
                answer = '4' + answer;
                n--;
            }else{
                /* "412"[b] 이부분은 진짜 신박한 방법; */
                answer = "412"[b] + answer;
            }
        }
        return answer;
    }