问题 4834 --3.波动序列

4834: 3.波动序列

题目描述

  一个 3 行 $n$ 列的矩阵,要从左往右在每一列依次选一个数(或者不选),满足以下条件:
  • 如果在第一行选,那么必须大于等于上一个被选择的数(如果不存在上一个数则没有这个限制);
  • 如果在第二行选,那么必须小于等于上一个被选择的数(如果不存在上一个数则没有这个限制);
  • 如果在第三行选,那么在选出的数构成的序列 $s_1,s_2, \dots, s_k$ 中,若对于连续的一段 $s_l,s_{l+1},\cdots,s_{r}$ 其均为第三行选出的数,那么需要满足 $s_{l-1} \leq s_{l} \leq s_{l+1} \leq \cdots \leq s_{r}$$s_{l-1} \geq s_{l} \geq s_{l+1} \geq \cdots \geq s_{r}$(即单调性方向相同)。
请求出能选择的数的最大个数。

输入

输入包含四行,第一行包含一个整数 $n$ 表示列数。
接下来三行,每行 $n$ 个整数,依次表示三行的数。

输出

输出仅包含一个整数,即能选择的数的最大个数。

样例输入输出

输入#1 复制
6
1 2 3 6 5 4
5 4 3 7 8 9
1 2 3 6 5 4
输出#1 复制
6

提示

【样例解释】
其中一种方案是取第三行 1,2,3,然后取第一行 6,然后取第三行 5,4,长度为 6。
记 $m$ 表示矩阵中所有数的最大的绝对值。
对于 $20\%$ 的数据,$ n \leq 10 , m \leq 1000 $ ;
对于 $60\%$ 的数据,$ n \leq 1000 , m \leq 1000$ 
对于 $100\%$ 的数据,$1\leq n \leq 10^5 , 0 \leq m \leq 10^9$。

序号 标题 作者 发表时间 费用 订购数 操作