- 난이도: Lv1
프로그래머스 링크: https://school.programmers.co.kr/learn/courses/30/lessons/131128
풀이 링크(GitHub): hayannn/CodingTest_Java/프로그래머스/1/131128. 숫자 짝꿍
풀이 시간 : 45분
<시간 초과로 인해 String이 아닌 StringBuilder 사용>
import java.util.*;
class Solution {
public String solution(String X, String Y) {
StringBuilder stringBuilder = new StringBuilder();
int[] xArray = new int[10];
for(String x : X.split("")){
xArray[Integer.parseInt(x)]++;
}
int[] yArray = new int[10];
for(String y : Y.split("")) {
yArray[Integer.parseInt(y)]++;
}
for(int i=9; i>=0; i--){
while(xArray[i] > 0 && yArray[i] > 0){
stringBuilder.append(i);
xArray[i]--;
yArray[i]--;
}
}
if("".equals(stringBuilder.toString())){
return "-1";
}
if("0".equals(stringBuilder.toString().substring(0,1))) {
return "0";
}
return stringBuilder.toString();
}
}