[BOJ 16788] 日本沈没 (Japan Sinks)

View as PDF

Submit solution

Points: 3
Time limit: 2.0s
Memory limit: 512M

Problem types
Allowed languages
Assembly, Awk, C, C++, Java, Pascal, Perl, Python, Sed, Text

日本列島は細長い列島である.日本列島は平行な境界線により N 個の区画に分けられている.区画には端から順に 1 から N の番号が付けられている.区画 i (1 ≦ i ≦ N) の高さは A_i である.</p>

日本列島は海に囲まれており,海面の高さは場所によらず一定である.高さが海面の高さより高い区画を陸地と呼ぶ.

陸地が連続している部分のことを島と呼ぶ.より正確に書くと以下の通りである.整数 l, r (1 ≦ l ≦ r ≦ N) について,日本列島のうち区画 l,区画 l+1,...,区画 r からなる部分を領域 [l, r] という.以下の条件を満たす領域 [l, r] を島という:

  • 区画 l,区画 l+1,...,区画 r はすべて陸地である.
  • l>1 ならば区画 l-1 は陸地ではない.
  • r ならば区画 r+1 は陸地ではない.

海面の上昇により,日本列島は少しずつ沈没している.現在の海面の高さは 0 であるが,これは時間が経つにつれて徐々に上がり,ついには日本全体が海になってしまう.

JOI 君は,海面の高さが上昇すると,日本の島の数が増減することに気付いた.現在から,日本に陸地がなくなるまでの間 (現在も含む) における,島の数の最大値を求めたい.

입력 형식

入力は以下の形式で標準入力から与えられる.</p>

N
A_1 A_2 ... A_N
## 출력 형식

現在から,日本に陸地がなくなるまでの間 (現在も含む) における,島の数の最大値を 1 行で出力せよ.

예제 입력 1

6
0 1 2 1 3 2

예제 출력 1

2

예제 입력 2

6
3 2 3 0 2 0

예제 출력 2

2

예제 입력 3

10
4 1 2 1 2 3 5 4 3 2

예제 출력 3

3

Comments

There are no comments at the moment.