링크 : https://programmers.co.kr/learn/courses/30/lessons/12899
import java.util.*;
import java.util.List;
class Solution {
public String solution(int n) {
String answer = "";
int[] values = {0,1,2,4};
List<Integer> remainders = new ArrayList<>();
// if n = 9; 나머지 추가
while(n > 3){
int q = n/3; //3
int r = n%3; //0
if(r == 0){
q = q-1; //2
r = r+3; //3
}
n = q;
remainders.add(r);
}
//remaiders = {3}; , n = 2;
// n = 2; 마지막 몫 추가.
if(n < 4){
remainders.add(n);
}
//remainders = {3, 2};
StringBuffer sb = new StringBuffer();
remainders.stream()
.forEachOrdered(v -> sb.append(values[v]));
//remainders = {4, 2};
answer = sb.reverse().toString();
//remainders = {2, 4}; {몫 + 나머지..};
return answer;
}
}
'교육 > 코테' 카테고리의 다른 글
[프로그래머스]JAVA 더 맵게 -힙 (0) | 2022.07.01 |
---|---|
[프로그래머스]JAVA 기능개발 (0) | 2022.07.01 |
[프로그래머스]JAVA 행렬 테두리 회전하기 (0) | 2022.06.30 |
[프로그래머스]JAVA 로또의 최고 순위와 최저 순위 (0) | 2022.06.29 |
[프로그래머스]JAVA 직사각형 별찍기 (0) | 2022.06.29 |