[프로그래머스] 124나라의 숫자 (n진법 활용)

쿼카쿼카·2023년 4월 7일
0

알고리즘

목록 보기
51/67

문제

코드

function solution(n) {
    let ans = '';
    const arr = [4, 1, 2];
    
    while(n > 0) {
        ans = arr[n%3] + ans;
        
        n = (n%3) ? Math.floor(n/3) : n/3 - 1;
    }
    
    return ans
}

또간초과

  • n이 5천만이니까 O(n)나왔다 하면 커트!!!
  • 그러거나 말거나 아직 코린이인 나는 맘대로 코드를 짰고, 2개인가 맞고 다 시간초과가 났다ㅎㅎ

나 근데 솔직히 억울(?)한 게 공책에다 3진법이랑 124형태로 잘 써놓고 공식을 허투로 찾아내서 시간초과 났어요 ㅡ3ㅡ... 그게 실력이라고요? 어쩔

3진법 활용

  • 3으로 나눠지는 수는 마지막 자리가 4고 몫에 -1을 해주면 된다!!
  • 3의 배수가 아닌 수들은 % 결과를 그대로 반영해주면 된다!
  • 미리 arr에 나머지를 담아두는 게 인상깊었어요

출처

profile
쿼카에요

0개의 댓글