[프로그래머스] PS/Java

[lv2] n진수 게임

SH3542 2024. 12. 6. 20:09

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

 

Integer 클래스의 toString()에 radix를 파라미터로 넣을 수 있는 것을 안다면, 2~16진수 변환 로직을 구현하지 않아도 된다.

 

러프하게 잡은 max만큼 n진수로 변환한 문자열을 저장한 뒤, 튜브의 차례 (등차수열)에 해당하는 문자만 뽑아 UpperCase로 출력한다.

 

class Solution {
    public String solution(int n, int t, int m, int p) {
        StringBuilder sb = new StringBuilder();

        int num = 0;
        int max = t * m;

        while(sb.length() < max) {
            sb.append(Integer.toString(num++, n));
        }

        StringBuilder ans = new StringBuilder();

        for(int nt=0; nt<t; nt++) {
            ans.append(sb.charAt(p - 1 + m * nt));
        }

        return ans.toString().toUpperCase();
    }
}

'[프로그래머스] PS > Java' 카테고리의 다른 글

[lv2] 귤 고르기  (1) 2024.12.06
[lv2] 압축  (1) 2024.12.06
[lv3] 등대  (0) 2024.12.04
[lv3] 합승 택시 요금  (0) 2024.11.30
[lv2] 땅따먹기  (0) 2024.11.23