Skip to content

Commit 8b00d07

Browse files
committed
[Bronze III] Title: 레몬 따기, Time: 328 ms, Memory: 34408 KB -BaekjoonHub
1 parent 6a14007 commit 8b00d07

2 files changed

Lines changed: 58 additions & 0 deletions

File tree

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
# [Bronze III] 레몬 따기 - 28061
2+
3+
[문제 링크](https://www.acmicpc.net/problem/28061)
4+
5+
### 성능 요약
6+
7+
메모리: 34408 KB, 시간: 328 ms
8+
9+
### 분류
10+
11+
수학, 사칙연산
12+
13+
### 제출 일자
14+
15+
2026년 4월 2일 23:59:56
16+
17+
### 문제 설명
18+
19+
<p>성우는 숲에서 레몬을 따와야 한다. 숲은 하나의 수직선으로 표현할 수 있고, 여기에는 레몬 나무 \(N\)그루가 \(x=1\)부터 \(x=N\)까지 일정한 간격으로 자라 있다. 성우는 현재 \(x=0\)에 있으며, 집은 \(x=N+1\)에 있다. \(x=i\)에 위치한 나무에는 \(a_i\)개의 레몬이 자라 있다. 성우는 집에 돌아갈 때까지 매번 다음 중 하나를 선택하여 행동한다.</p>
20+
21+
<ol>
22+
<li>채집: 나무에 자라있는 레몬을 모두 딴다. 이 행동은 <strong>최대 한 번</strong> 할 수 있다.</li>
23+
<li>이동: 현재 위치가 \(x=i\)라면, \(x=i+1\)로 이동한다.</li>
24+
</ol>
25+
26+
<p>하지만 레몬을 담을 보따리에는 구멍이 뚫려 있었다. 성우가 이동(행동 2)할 때마다, 보따리에 레몬이 담겨 있다면 보따리에 담긴 레몬이 \(1\)개 빠져나오고, 이는 다시 주울 수 없다. 성우가 집에 들고 갈 수 있는 레몬의 최대 개수를 구해주자!</p>
27+
28+
### 입력
29+
30+
<p>첫째 줄에 나무의 수 \(N\)이 주어진다. \((1 \leq N \leq 2 \times 10^5)\)</p>
31+
32+
<p>둘째 줄에는 \(x=i\)에 위치한 나무에 자라 있는 레몬의 개수 \(a_i\)가 차례대로 주어진다. \((1 \leq a_i \leq 10^9)\)</p>
33+
34+
### 출력
35+
36+
<p>성우가 집에 들고 갈 수 있는 레몬의 최대 개수를 출력한다.</p>
37+
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
import java.io.BufferedReader;
2+
import java.io.IOException;
3+
import java.io.InputStreamReader;
4+
import java.util.StringTokenizer;
5+
6+
public class Main {
7+
public static void main(String[] args) throws IOException {
8+
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
9+
10+
int N = Integer.parseInt(br.readLine());
11+
StringTokenizer st = new StringTokenizer(br.readLine());
12+
13+
int max = 0;
14+
15+
for (int i = 0; i < N; i++) {
16+
max = Math.max(max, Integer.parseInt(st.nextToken()) - (N - i));
17+
}
18+
19+
System.out.print(max);
20+
}
21+
}

0 commit comments

Comments
 (0)