본문 바로가기

ProgramSoliving

프로그래머스 : 큰 수 만들기

반응형
import java.util.*;

class Solution {
    public String solution(String number, int k) {
        Stack<Integer> stack = new Stack<>();
        stack.push(number.charAt(0)-'0');
        int i = 0;
        for(i=1;i<number.length()&& k!=0;i++){
            int num = number.charAt(i)-'0';
            while(k!=0&&!stack.isEmpty()&&stack.peek() < num){
                stack.pop();
                k--;
            }
            stack.push(num);
        }
        
        StringBuilder sb = new StringBuilder();
        while(!stack.isEmpty())
            sb.append(stack.pop());
        String answer = sb.reverse().toString() + number.substring(i,number.length());
        return answer.substring(0,answer.length()-k);
    }
}
반응형

'ProgramSoliving' 카테고리의 다른 글

프로그래머스 : 체육복  (0) 2020.12.23
프로그래머스 : 조이스틱  (0) 2020.12.23
프로그래머스 : 구명보트  (0) 2020.12.23
프로그래머스 : 섬 연결하기  (0) 2020.12.23
프로그래머스 : 모의고사  (0) 2020.12.21