题目描述
给定正整数序列 x1…,xn。
- 计算其最长不下降子序列的长度 s。
- 如果每个元素只允许使用一次,计算从给定的序列中最多可取出多少个长度为 s 的不下降子序列。
- 如果允许在取出的序列中多次使用 x1 和 xn(其他元素仍然只允许使用一次),则从给定序列中最多可取出多少个不同的长度为 s 的不下降子序列。
令 a1,a2,…,as 为构造 S 时所使用的下标,b1,b2,…,bs 为构造 T 时所使用的下标。且 ∀i∈[1,s−1],都有 ai<ai+1,bi<bi+1。则 S 和 T 不同,当且仅当 ∃i∈[1,s],使得 ai=bi。
输入格式
第一行有一个正整数 n,表示给定序列的长度。接下来的一行有 n 个正整数x1,...,xn。
输出格式
- 第 1 行是最长不下降子序列的长度 s。
- 第 2 行是可取出的长度为 s 的不下降子序列个数。
- 第 3 行是允许在取出的序列中多次使用 x1 和 xn 时可取出的长度为 s 的不同的不下降子序列个数。
提示
1≤n≤500