在資訊科學中有一些是關於在某些條件限制下,找出一些計算的最大值。
以歷史考試來說好了,學生被要求對一些歷史事件根據其發生的年代順序來排列。所有事件順序都正確的學生無疑的可以得滿分。但是那些沒有全對的人又該如何給分呢?以下有 2 種可能的給分方式:
- 每個與標準答案的順序相同的事件得 1 分
- 每個在最長 (但不一定要連續) 的序列事件中,其相對的順序亦可以在標準答案發現者,每個事件得 1 分。
舉例說明:如果有 4 個事件其發生時間的順序依次是 1 2 3 4
(就是標準答案啦,意思是第 1 個事件發生順序為 1、第 2 個事件發生的順序為 2、…)。所以如果學生回答此 4 個事件發生的順序依次是 1 3 2 4
的話,根據上面第 1 種方法可以得 2 分 (第 1 個及第 4 個事件)。但是如果以上面第 2 種方法可以得 3 分 (1 2 4
或者 1 3 4
其相對的順序可以在標準答案發現)
在本問題中,請你寫一個程式以第 2 個方法算出學生該得多少分。
Input
只考一次試,所以輸入的第1列有一個整數 $n$ ($2\leq{n}\leq{20}$) 代表此次歷史考試有多少個事件要排序。第 2 列為標準答案,有 $n$ 個正整數 $c_{1},c_{2},\cdots{},c_{n}$ (其內容為 $1$ 到 $n$ 的某種排列),$c_{1}$ 代表第 1 個事件發生的順序,$c_{2}$ 代表第 2 個事件發生的順序,依此類推。
從第3列開始每列為一學生的答案,每列有 $n$ 個正整數$r_{1},r_{2},\cdots{},r_{n}$ (其內容亦為 $1$ 到 $n$ 的某種排列),$r_{1}$ 代表學生回答第 1 個事件發生的順序,$r_{2}$代表學生回答第 2 個事件發生的順序,依此類推。
Output
對每一學生的答案,輸出其所得的分數。
Sample Input
10
3 1 2 4 9 5 10 6 8 7
1 2 3 4 5 6 7 8 9 10
4 7 2 3 10 6 9 1 5 8
3 1 2 4 9 5 10 6 8 7
2 10 1 3 8 4 9 5 7 6
Sample Output
6
5
10
9