되면한다

프로그래머스 - 124 나라의 숫자 (구현) 본문

코딩테스트준비

프로그래머스 - 124 나라의 숫자 (구현)

haeullee 2023. 11. 1. 12:12

https://school.programmers.co.kr/learn/courses/30/lessons/12899

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

1(10진수)은 %3 결과로 1.

2(10진수)는 %3 결과로 2.

3(10진수)은 %3 결과로 0이 나오고 몫은 1이 나오는데, 4라고 표기되어야한다. 

 

이 규칙을 정의 해보면,

"3으로 나누어 떨어지면, 나머지값을 4로 쓰고, 몫을 -1 해준다."

 

예를 들어 

12를 3으로 나누면, 몫은 4 나머지는 0이 된다. -> 1) 몫 4에서 -1 해서, 3으로 만들기! 2) 나머지 0을 4로 표기

다시 3을 3으로 나누면, 몫은 1 나머지는 0이 된다. -> 1) 몫 1에서 -1 해서, 0으로 만들기! 2) 나머지 0을 4로 표기

따라서, 44

 

#include <string>
#include <vector>

using namespace std;

string solution(int n) {
    string answer = "";
    
    while(n != 0)
    {
        
        if(n%3 == 0)
        {
            answer = "4" + answer;
            n = n/3;
            n--;
        }
        else if(n%3 == 1)
        {
            answer = "1" + answer;
            n = n/3;
        }
        else
        {
            answer = "2" + answer;
            n = n/3;
        }
        
        
    }
    
    return answer;
}

'코딩테스트준비' 카테고리의 다른 글

파이프 옮기기 1  (1) 2023.11.19
프로그래머스 - 여행경로(dfs)  (0) 2023.11.12
프로그래머스 SQL  (0) 2023.10.26
프로그래머스 - 광물 캐기  (0) 2023.10.15
프로그래머스 - 경주로 건설  (0) 2023.10.08
Comments