프로그래머스

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

programmers.co.kr

3진법과 같다고 생각하고 접근했다.

 

1. n이 0이 아닐때까지 num에 n % 3을 담고 n/= 해준다.

2-1. num == 0일 때 answer의 앞에 "4"를 더해주고 n--한다.

2-2. num == 1일 때 answer의 앞에 "1"을 더해준다.

2-3. num == 2일 때 answer의 앞에 "2"를 더해준다. 

3. 반복문이 끝나면 answer 리턴

#include <string>
#include <vector>

using namespace std;

string solution(int n) {
    string answer = "";
    
    while (n!=0) {
        int num = n % 3;
        n /= 3;

        if (num == 0) {
            answer = "4" + answer;
            n--;
        }
        else if (num == 1) answer = "1" + answer;
        else if (num == 2) answer = "2" + answer;
    }

    return answer;
}

'프로그래머스 > 2레벨' 카테고리의 다른 글

땅따먹기/C++  (0) 2023.01.18
k진수에서 소수 개수 구하기/C++  (0) 2023.01.18
할인 행사/C++  (0) 2023.01.17
연속 부분 수열 합의 개수/C++  (0) 2023.01.17
n^2 배열 자르기/C++  (0) 2023.01.17

+ Recent posts