#aBC360G. [ABC360G] Suitable Edit for LIS

[ABC360G] Suitable Edit for LIS

AT_abc360_g [ABC360G] Suitable Edit for LIS

题目描述

给定一个长度为 NN 的整数序列 AA。高桥君可以进行一次如下操作:

  • 选择一个 11NN 之间的整数 xx,以及任意一个整数 yy,将 AxA_x 替换为 yy

请你求出,经过操作后,序列 AA 的最长严格递增子序列(LIS)的最大可能长度。

最长递增子序列的定义:序列 AA 的子序列是指从 AA 中选出若干元素,保持原有顺序排列而成的序列。AA 的最长递增子序列是指所有严格递增的子序列中,长度最大的一个。

输入格式

输入以如下格式从标准输入读入:

NN A1A_1 A2A_2 \cdots ANA_N

输出格式

请输出一行答案。

输入输出样例 #1

输入 #1

4
3 2 2 4

输出 #1

3

输入输出样例 #2

输入 #2

5
4 5 3 6 7

输出 #2

4

说明/提示

限制条件

  • 1N2×1051 \leq N \leq 2 \times 10^5
  • 1Ai1091 \leq A_i \leq 10^9

样例解释 1

给定的数列 AA 的 LIS 长度为 22。例如,将 A1A_1 替换为 11 后,操作后的 AA 的 LIS 长度可以达到 33,这是最大值。

由 ChatGPT 4.1 翻译