Sequence Game
题号:NC223577
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

由于你帮助 Alice 回答得非常好,Sept 又找到了 Bob,希望能难倒他。
他给了要求 Bob 组成一个长度为  的新的数列 ,其中数列  的每一个元素 a_i 都有  个取值。
求所有可能的数列  中的最长上升子序列的的最大长度。
由于 Sept 怕题目钛难,所以他答应 Bob,对于每个  个取值不降。

输入描述:

第一行两个数 ,意义如题述。
接下来  行,每行  个数,即  的  个取值。

输出描述:

仅一行一个整数,即所有可能的数列  中的最长上升子序列的最大长度。
示例1

输入

复制
2 2
1 3
1 2

输出

复制
2

说明

数列  可能为 \{1,2\}\,这时最长上升子序列的长度为 ,是最长的长度。

备注:

对于  的数据,有 ,每个取值都是非负数,不超过