Skip to content

Commit a50e50d

Browse files
authored
[20250323] BOJ / G5 / 빗물 / 이강현
1 parent 9ed5a98 commit a50e50d

File tree

1 file changed

+54
-0
lines changed

1 file changed

+54
-0
lines changed

lkhyun/202503/23 BOJ G5 빗물.md

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
```java
2+
import java.util.*;
3+
import java.io.*;
4+
public class Main {
5+
static BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
6+
static BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
7+
static StringTokenizer st;
8+
static int H = 0;
9+
static int W = 0;
10+
static int[] world;
11+
static int answer = 0;
12+
public static void main(String[] args) throws Exception {
13+
st = new StringTokenizer(br.readLine());
14+
H = Integer.parseInt(st.nextToken());
15+
W = Integer.parseInt(st.nextToken());
16+
world = new int[W];
17+
18+
st = new StringTokenizer(br.readLine());
19+
for(int i=0;i<W;i++){
20+
world[i] = Integer.parseInt(st.nextToken());
21+
}
22+
23+
boolean flag = true;
24+
while(flag){
25+
flag = false;
26+
for(int k=1;k<W-1;k++){
27+
int left = 0;
28+
for(int i=1;i<=k;i++) { //왼쪽 탐색
29+
if (world[k - i] > world[k]) {
30+
left = i;
31+
break;
32+
}
33+
}
34+
int right = 0;
35+
for(int i=1;i<W-k;i++){ //오른쪽 탐색
36+
if (world[k + i] > world[k]) {
37+
right = i;
38+
break;
39+
}
40+
}
41+
if(left!=0 && right!=0){
42+
if(world[k]<H){
43+
world[k]++;
44+
flag = true;
45+
answer++;
46+
}
47+
}
48+
}
49+
}
50+
bw.write(answer+"");
51+
bw.close();
52+
}
53+
}
54+
```

0 commit comments

Comments
 (0)