diff --git "a/LiiNi-coder/202511/22 PGM \355\201\260 \354\210\230 \353\247\214\353\223\244\352\270\260.md" "b/LiiNi-coder/202511/22 PGM \355\201\260 \354\210\230 \353\247\214\353\223\244\352\270\260.md" new file mode 100644 index 00000000..b2798107 --- /dev/null +++ "b/LiiNi-coder/202511/22 PGM \355\201\260 \354\210\230 \353\247\214\353\223\244\352\270\260.md" @@ -0,0 +1,33 @@ +```java +import java.util.*; + +class Solution { + public String solution(String number, int k) { + int len = number.length() - k; + + Deque stack = new ArrayDeque<>(); + + for(int i = 0; i < number.length(); i++){ + char c = number.charAt(i); + + while(!stack.isEmpty()){ + if(k<=0 || stack.peekLast() >= c) + break; + stack.pollLast(); + k--; + } + stack.offerLast(c); + } + + while(stack.size() > len){ + stack.pollLast(); + } + StringBuilder sb = new StringBuilder(); + while(!stack.isEmpty()){ + sb.append(stack.pollFirst()); + } + return sb.toString(); + } +} + +```