卡牌遊戲 (APCS 2023-10 中級)
1.0s 256M有一個 \(n\) 列、\(m\) 欄的表格,每個格子上都放著一張具有整數數值的 卡牌。每一個在表格中出現的數值都恰好出現兩次。
若兩張數值同為 \(x\) 的卡牌位於同一列或同一欄,而且它們之間沒有任何 尚未移除的卡牌,你就可以移除這兩張卡牌,並獲得 \(x\) 分。移除後的格子 會變成空格;空格不會阻擋其他卡牌。
你可以重複進行以上操作,也可以自行選擇每次要移除的牌對。請求出最多 可以獲得多少分。
輸入格式
第一列包含兩個整數 \(n\)、\(m\),分別表示表格的列數與欄數。
接下來 \(n\) 列,每列包含 \(m\) 個整數,表示表格中的卡牌數值。
限制
- \(1\le n\le20\)
- \(1\le m\le40\)
- 每張卡牌的數值介於 \(0\) 到 \(1000\) 之間
- 每一個出現的數值都恰好出現兩次
- \(nm\) 為偶數
輸出格式
輸出一個整數,表示可以獲得的最大總分。
評分說明
每一筆測試資料的執行時間限制均為 \(1\) 秒,依正確通過的測試資料筆數給分。其中:
| 子題 | 分數 | 額外限制 |
|---|---|---|
| 1 | 60 | \(n=1\) |
| 2 | 40 | 無額外限制 |
範例輸入 1
1 8
0 2 3 3 0 2 5 5
範例輸出 1
8
範例解釋 1
數值為 3 與 5 的兩組卡牌都可以移除,因此最多得到 \(3+5=8\) 分。
範例輸入 2
3 6
0 2 3 8 0 2
1 1 4 4 5 7
5 6 3 8 6 7
範例輸出 2
29
範例解釋 2
可以依序移除數值為 1、4、7、3、8、6 的牌對,總分為 \(1+4+7+3+8+6=29\)。
題目來源
登入後即可撰寫程式並提交評測。
登入