#P14034. [PAIO 2025] Cards
[PAIO 2025] Cards
Description
你有 张黑卡, 张白卡,以及 张青卡(共 张卡片)。你要将所有卡片按照任意顺序逐一放到一个单独的卡堆上。
每当你放下一个卡片后,检查卡堆:
- 如果卡堆里现在已经至少有一种黑、白、青三色各一张,你可以得 分,随后将除了刚放下的那张卡片之外的所有卡片都销毁(从卡堆移除)。刚放下的那张卡片依然留在卡堆上,成为唯一的卡片。
- 否则,什么都不发生。
你的任务是计算你能获得的最大得分。
实现细节
你需要实现一个名为 maximum_score 的过程,无需引入头文件 card.h,并且使用 C++17 或以上的语言规范提交本题:
int64 maximum_score(int32 X, int32 Y, int32 Z);
- :黑色卡牌的数量;
- :白色卡牌的数量;
- :青色卡牌的数量;
该过程在程序开始时每个测试用例最多会被调用 次。
该过程应返回你能获得的最大分数。
Input Format
无。
Output Format
无。
Hint
示例
示例 1
考虑如下调用:
maximum_score(2, 2, 1);
该过程应返回 。
示例 2
考虑如下调用:
maximum_score(4, 3, 4);
该过程应返回 。
样例判题器
样例判题器以如下格式读入输入:
- 第 行:整数 ,表示对
maximum_score的调用次数 - 接下来的 行:每行有三个整数
判题器调用 maximum_score(X, Y, Z) 并输出返回值。
提示
评分标准
- 子任务 1(4 分):
- 子任务 2(7 分):
- 子任务 3(15 分):
- 子任务 4(25 分):
- 子任务 5(12 分):
- 子任务 6(24 分):
- 子任务 7(13 分):无其他特殊约束
由 ChatGPT 5 翻译
京公网安备 11011102002149号