프로그래머스 - 외계행성의 나이

남궁진 (jinvicky)·2026년 4월 6일

Problem


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

Solution


여기서 숫자를 알파벳으로 변형하는 공식을 외우면 좋다.
v1,2,3....과 같은 숫자를 의미한다.

(char)('a' + v) // 소문자로 변환
(char)('A'+ v) // 대문자로 변환

n자릿수의 숫자를 하나씩 쪼개서 처리할 때는 while문을 사용한 나누기를 많이 쓴다.
이 방법은 뒤에서부터 앞으로 진행되기 때문에 꼭 sb.reverse() 로직이 추가되어야 함을 잊지 않기!

Code


class Solution {
    public String solution(int age) {
        StringBuilder sb = new StringBuilder();
        
        while(age > 0) {
            int v = age % 10;
            
            sb.append((char)('a' + v));
            
            age /= 10;
        }
        
        // 내가 계산을 역순으로 하니까 reverse() 로직이 필요하다.         
        return sb.reverse().toString();
    }
}
profile
문제를 차근차근 하나씩 해결하려고 합니다:)

0개의 댓글