Preparando MOJI

Longest Array Deconstruction

2000ms 524288K

Description:

Mr. Chanek gives you a sequence $$$a$$$ indexed from $$$1$$$ to $$$n$$$. Define $$$f(a)$$$ as the number of indices where $$$a_i = i$$$.

You can pick an element from the current sequence and remove it, then concatenate the remaining elements together. For example, if you remove the $$$3$$$-rd element from the sequence $$$[4, 2, 3, 1]$$$, the resulting sequence will be $$$[4, 2, 1]$$$.

You want to remove some elements from $$$a$$$ in order to maximize $$$f(a)$$$, using zero or more operations. Find the largest possible $$$f(a)$$$.

Input:

The first line contains one integer $$$n$$$ ($$$1 \leq n \leq 2 \cdot 10^5$$$) — the initial length of the sequence.

The second line contains $$$n$$$ integers $$$a_1, a_2, \ldots, a_n$$$ ($$$1 \leq a_i \leq 2 \cdot 10^5$$$) — the initial sequence $$$a$$$.

Output:

Output an integer denoting the largest $$$f(a)$$$ that can be obtained by doing zero or more operations.

Sample Input:

7
2 1 4 2 5 3 7

Sample Output:

3

Sample Input:

4
4 2 3 1

Sample Output:

2

Note:

In the first example, $$$f(A) = 3$$$ by doing the following operations.

$$$[2,1,\textbf{4},2,5,3,7] \rightarrow [\textbf{2},1,2,5,3,7] \rightarrow [1,2,5,3,\textbf{7}] \rightarrow [1,2,\textbf{5},3] \rightarrow [1,2,3]$$$

In the second example, $$$f(A) = 2$$$ and no additional operation is needed.

Informação

Codeforces

Provedor Codeforces

Código CF1575L

Tags

data structuresdivide and conquerdpsortings

Submetido 0

BOUA! 0

Taxa de BOUA's 0%

Datas 09/05/2023 10:17:56

Relacionados

Nada ainda