a028: History Grading
標籤 :
通過比率 : 100% (20 人 / 20 人 ) (非即時)
評分方式:
Tolerant

最近更新 : 2018-04-03 10:52

內容 :

在資訊科學中有一些是關於在某些條件限制下,找出一些計算的最大值。

以歷史考試來說好了,學生被要求對一些歷史事件根據其發生的年代順序來排列。所有事件順序都正確的學生無疑的可以得滿分。但是那些沒有全對的人又該如何給分呢?以下有2種可能的給分方式:

  1. 每個與標準答案的順序相同的事件得1分
  2. 每個在最長(但不一定要連續)的序列事件中,其相對的順序亦可以在標準答案發現者,每個事件得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個方法算出學生該得多少分。

輸入說明

只考一次試,所以輸入的第1列有一個整數n(2 <= n <= 20)代表此次歷史考試有多少個事件要排序。第2列為標準答案,有n個正整數c1,c2,......cn,(其內容為1到n的某種排列),c1代表第1個事件發生的順序,c2代表第2個事件發生的順序,依此類推。

從第3列開始每列為一學生的答案,每列有n個正整數r1,r2,......rn,(其內容亦為1到n的某種排列),r1代表學生回答第1個事件發生的順序,r2代表學生回答第2個事件發生的順序,依此類推。

輸出說明

對每一學生的答案,輸出其所得的分數。

範例輸入
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
範例輸出
6
5
10
9
測資資訊:
記憶體限制: 512 MB
公開 測資點#0 (100%): 1.0s , <1K
提示 :

LIS, DP

標籤:
出處:
UVA [編輯: zero (管理員) ]
編號 身分 題目 主題 人氣 發表日期
沒有發現任何「解題報告」