문제링크
N진수 게임
문제 풀이
- Java에서 n진수 구하는 방법은
Integer.toString(int n, int radix)
를 이용하면 쉽게 구할 수 있다.
- 이를 통해서 우선 게임에 참가하는 인원 * 튜브가 말할 숫자 개수 만큼 n진수의 값을 구한다.
- 그 다음 구해진 값을 순서에 맞게 더해서 String 값을 return해주면 끝!
import java.util.stream.Collectors;
import java.util.stream.IntStream;
class Solution {
public String solution(int n, int t, int m, int p) {
StringBuilder answer = new StringBuilder();
String[] split = IntStream
.rangeClosed(0, m * t)
.mapToObj(i -> Integer.toString(i, n))
.collect(Collectors.joining())
.split("");
for (int i = p - 1; i < m * t; i += m) {
answer.append(split[i]);
}
return answer.toString().toUpperCase();
}
}
후기
- 나만 그런 생각한거 아니지? 아무리 문제라도 정신 나간 것 같아