#P13379. [GCJ 2011 #3] Dire Straights
[GCJ 2011 #3] Dire Straights
Description
你正在玩一款纸牌游戏,每张牌上都写有一个整数。
在游戏中,你会得到一些牌——你的手牌。然后你需要将手牌中的牌分组成“顺子”。顺子是一组牌,这组牌上的数字是连续的;例如三张牌 ,或者单独一张牌 。你获得的奖金等于最短顺子的长度。如果你没有任何牌,则无法组成顺子,因此你获得 元。
你将会得到若干组测试数据,每组数据描述了你手中的牌。请你计算每组测试数据中你最多能获得多少奖金。
Input Format
输入的第一行包含测试数据组数 。每组测试数据占一行。每行包含一个整数 ,表示你手中的牌数,接下来有 个整数,表示这些牌上的数字。所有数字以空格分隔。
Output Format
对于每组测试数据,输出一行,格式为 "Case #: ",其中 为测试数据编号(从 开始), 为你能获得的最大奖金。
4
10 1 2 3 4 5 10 9 8 7 6
8 101 102 103 104 105 106 103 104
0
5 1 2 3 4 9
Case #1: 10
Case #2: 4
Case #3: 0
Case #4: 1
Hint
样例解释
第 1 组,你有 到 共 张牌,可以组成一个长度为 的顺子,获得 元。
第 2 组,你可以组成两个顺子 和 ,获得 元。但更优的做法是组成 和 ,获得 元。
第 4 组,数字为 的牌只能单独成顺子,因此只能获得 元。
第 3 组,你没有任何牌,因此获得 元。你不能无中生有获得奖金。
数据范围
- 牌上的数字范围为 到
小数据范围(4 分,测试点 1 - 可见)
- 时间限制:3 秒
大数据范围(12 分,测试点 2 - 隐藏)
- 时间限制:6 秒
由 ChatGPT 4.1 翻译
京公网安备 11011102002149号