본문 바로가기
알고리즘

[알고리즘] c++ cpp 3진법 뒤집기

by keel_im 2020. 10. 21.
반응형

포인트

1. 진법 변환은 각 요령을 구한 뒤 체득화할 필요가 있다. 

2. 11진수로 넘어가면 값을 직접 넘기는 것이 편할 수 있다. 

🧶문서는 항상 수정 될 수 있습니다. 비판은 환영합니다. 

#include <string>

using namespace std;
char map[] = {'0', '1', '2'};
int solution(int n) {
    int answer = 0;

    string s;
    if(n==0) return 0;

    while(n>0){
        s+=map[n%3];
        n/=3;
    }

    int b=1;

    for(int i=s.size()-1; i>=0;i--){
         answer += (s[i]-'0')*b;
         b*=3;
    }
    
    return answer;
}

 

반응형

댓글