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 |