카테고리 없음

[Lv. 1] 숫자 짝꿍

녱녱 2023. 8. 28.

class Solution {
    public String solution(String X, String Y) {
        String answer = "";
        StringBuilder sb = new StringBuilder();
        
        int[] xArr = new int[10];
        int[] yArr = new int[10];
        
        for(String x : X.split("")){
            xArr[Integer.parseInt(x)]++;
        }
        
        for(String y : Y.split("")){
            yArr[Integer.parseInt(y)]++;
        }        
        
        for(int i = 9; i>=0; i--){
            while(xArr[i] > 0 && yArr[i] > 0){
                sb.append(i);
                
                xArr[i]--;
                yArr[i]--;
            }
        }
        
        answer = sb.toString();
        if("".equals(sb.toString())) return "-1";
        if("0".equals(sb.toString().substring(0, 1))) return "0";
        return answer;
    }
}

우선 숫자별로 개수를 파악하기 위한 배열 xArr/yArr를 만든 후 for문을 사용해 배열에 숫자를 셋팅한다

 

마지막 for문을 돌면서 i = 9 일때 부터 반복해 둘 다 가지고 있는 숫자라면 sb에 추가하는 방식으로 문제를 풀었다

댓글