TopCoder

User's AC Ratio

NaN% (0/0)

Submission's AC Ratio

NaN% (0/0)

Tags

Description

以下的演算法會將一個正整數序列轉換成一張有向圖。

  1. 輸入為正整數序列 $a$,長為 $n$,元素分別為 $a_1, a_2, \ldots, a_n$。
  2. 創造一張有 $n$ 個點的有向圖,編號分別為 $1, 2, \ldots, n$。
  3. 對於任何一個 $i$ 滿足 $1 \leq i \leq n$ 以及 $j$ 滿足 $\max(1, i - a_i) \leq j \leq \min(n, i + a_i)$,連上一條有向邊 $i \rightarrow j$。
  4. 所得的有向圖即為輸出。

給定一個正整數序列 $a$,請找出以 $a$ 為輸入的以上演算法會輸出的那張有向圖當中的

$$ \max_{i, j \in V} d(i, j) $$

,其中 $d(i, j)$ 即為 $i$ 至 $j$ 在有向圖上的最短距離。

Input Format

輸入的第一行會有一個 $n$,代表正整數序列的長度。

接下來有 $n$ 個以一個空格分隔的正整數 $a_1, a_2, \ldots, a_n$,代表該正整數序列。

  • $2 \leq n \leq 200000$
  • $1 \leq a_i \leq 10^ 9$ 對所有合法的 $i$

Output Format

輸出一行,包含一個正整數,為題目所求的答案。

Sample Input 1

3
1 1 1

Sample Output 1

2

Sample Input 2

7
7 1 1 1 1 1 7

Sample Output 2

3

Hints

Problem Source

IOICamp 2020 Day2 pA

Subtasks

No. Testdata Range Constraints Score
1 0~1 範例測資 0
2 0~96 無額外限制 100

Testdata and Limits

No. Time Limit (ms) Memory Limit (VSS, KiB) Output Limit (KiB) Subtasks
0 1000 131072 65536 1 2
1 1000 131072 65536 1 2
2 1000 131072 65536 2
3 1000 131072 65536 2
4 1000 131072 65536 2
5 1000 131072 65536 2
6 1000 131072 65536 2
7 1000 131072 65536 2
8 1000 131072 65536 2
9 1000 131072 65536 2
10 1000 131072 65536 2
11 1000 131072 65536 2
12 1000 131072 65536 2
13 1000 131072 65536 2
14 1000 131072 65536 2
15 1000 131072 65536 2
16 1000 131072 65536 2
17 1000 131072 65536 2
18 1000 131072 65536 2
19 1000 131072 65536 2
20 1000 131072 65536 2
21 1000 131072 65536 2
22 1000 131072 65536 2
23 1000 131072 65536 2
24 1000 131072 65536 2
25 1000 131072 65536 2
26 1000 131072 65536 2
27 1000 131072 65536 2
28 1000 131072 65536 2
29 1000 131072 65536 2
30 1000 131072 65536 2
31 1000 131072 65536 2
32 1000 131072 65536 2
33 1000 131072 65536 2
34 1000 131072 65536 2
35 1000 131072 65536 2
36 1000 131072 65536 2
37 1000 131072 65536 2
38 1000 131072 65536 2
39 1000 131072 65536 2
40 1000 131072 65536 2
41 1000 131072 65536 2
42 1000 131072 65536 2
43 1000 131072 65536 2
44 1000 131072 65536 2
45 1000 131072 65536 2
46 1000 131072 65536 2
47 1000 131072 65536 2
48 1000 131072 65536 2
49 1000 131072 65536 2
50 1000 131072 65536 2
51 1000 131072 65536 2
52 1000 131072 65536 2
53 1000 131072 65536 2
54 1000 131072 65536 2
55 1000 131072 65536 2
56 1000 131072 65536 2
57 1000 131072 65536 2
58 1000 131072 65536 2
59 1000 131072 65536 2
60 1000 131072 65536 2
61 1000 131072 65536 2
62 1000 131072 65536 2
63 1000 131072 65536 2
64 1000 131072 65536 2
65 1000 131072 65536 2
66 1000 131072 65536 2
67 1000 131072 65536 2
68 1000 131072 65536 2
69 1000 131072 65536 2
70 1000 131072 65536 2
71 1000 131072 65536 2
72 1000 131072 65536 2
73 1000 131072 65536 2
74 1000 131072 65536 2
75 1000 131072 65536 2
76 1000 131072 65536 2
77 1000 131072 65536 2
78 1000 131072 65536 2
79 1000 131072 65536 2
80 1000 131072 65536 2
81 1000 131072 65536 2
82 1000 131072 65536 2
83 1000 131072 65536 2
84 1000 131072 65536 2
85 1000 131072 65536 2
86 1000 131072 65536 2
87 1000 131072 65536 2
88 1000 131072 65536 2
89 1000 131072 65536 2
90 1000 131072 65536 2
91 1000 131072 65536 2
92 1000 131072 65536 2
93 1000 131072 65536 2
94 1000 131072 65536 2
95 1000 131072 65536 2
96 1000 131072 65536 2