File tree Expand file tree Collapse file tree 1 file changed +46
-0
lines changed
Expand file tree Collapse file tree 1 file changed +46
-0
lines changed Original file line number Diff line number Diff line change 1+ ``` java
2+ import java.util.* ;
3+ import java.io.* ;
4+
5+ public class Main {
6+ static BufferedReader br = new BufferedReader (new InputStreamReader (System . in));
7+ static BufferedWriter bw = new BufferedWriter (new OutputStreamWriter (System . out));
8+ static StringTokenizer st;
9+ static int N , K ;
10+
11+ public static void main (String [] args ) throws Exception {
12+ st = new StringTokenizer (br. readLine());
13+ N = Integer . parseInt(st. nextToken());
14+ K = Integer . parseInt(st. nextToken());
15+
16+ String input = br. readLine();
17+
18+ ArrayDeque<Character > deq = new ArrayDeque<> ();
19+ int removeCount = K ;
20+
21+ for (int i = 0 ; i < N ; i++ ) {
22+ char cur = input. charAt(i);
23+
24+ while (! deq. isEmpty() && deq. peek() < cur && removeCount > 0 ) {
25+ deq. pop();
26+ removeCount-- ;
27+ }
28+
29+ deq. push(cur);
30+ }
31+
32+ while (removeCount > 0 ) {
33+ deq. pop();
34+ removeCount-- ;
35+ }
36+
37+ StringBuilder sb = new StringBuilder ();
38+ while (! deq. isEmpty()){
39+ sb. append(deq. pollLast());
40+ }
41+
42+ bw. write(sb. toString());
43+ bw. close();
44+ }
45+ }
46+ ```
You can’t perform that action at this time.
0 commit comments