Skip to content

Commit f90d353

Browse files
authored
[20251116] BOJ / P5 / 최솟값 찾기 / 이강
1 parent b9099af commit f90d353

File tree

1 file changed

+35
-0
lines changed

1 file changed

+35
-0
lines changed
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
```java
2+
import java.util.*;
3+
import java.io.*;
4+
5+
public class Main {
6+
static class Node{
7+
int value,idx;
8+
Node(int value, int idx){
9+
this.value = value;
10+
this.idx = idx;
11+
}
12+
}
13+
static BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
14+
static BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
15+
static StringBuilder sb = new StringBuilder();
16+
static StringTokenizer st;
17+
static int N,L;
18+
static ArrayDeque<Node> deq = new ArrayDeque<>();
19+
public static void main(String[] args) throws Exception {
20+
st = new StringTokenizer(br.readLine());
21+
N = Integer.parseInt(st.nextToken());
22+
L = Integer.parseInt(st.nextToken());
23+
24+
st = new StringTokenizer(br.readLine());
25+
for(int i = 0; i < N; i++){
26+
Node cur = new Node(Integer.parseInt(st.nextToken()), i);
27+
while(!deq.isEmpty() && deq.peekLast().value > cur.value) deq.pollLast();
28+
deq.offer(cur);
29+
while(deq.peekFirst().idx < i-L+1) deq.poll();
30+
bw.write(deq.peekFirst().value+" ");
31+
}
32+
bw.close();
33+
}
34+
}
35+
```

0 commit comments

Comments
 (0)