P9586 「MXOI Round 2」游戏

「MXOI Round 2」游戏

题目描述

小 C 和小 D 正在玩一款蒸蒸日上的游戏。

这款游戏共有 3 3 3 种手牌:杀、闪、斩。他们的用途分别如下:

  • 杀:对对方使用,对方需要使用一张 ,否则对方输掉游戏; 回应对方的

  • 闪:回应对方的

  • 斩:对对方使用,对方需要使用一张,否则对方输掉游戏。

玩家在每使用一张牌后,都需要弃掉该使用的牌。

从小 C 开始,每个回合依次属于小 C 和小 D。在玩家的回合内,该玩家可以出任意,对方需要做出对应的回应。当然,玩家也可以不出牌,直接进入对方的回合。

现在,小 C 共有 c 1 c_1 c1 张杀、 c 2 c_2 c2 张闪、 c 3 c_3 c3 张斩,小 D 共有 d 1 d_1 d1 张杀、 d 2 d_2 d2 张闪、 d 3 d_3 d3 张斩,双方都知道对方的手牌。你需要求出,双方在都进行最优策略的情况下,游戏的结果会如何。

输入格式

本题有多组测试数据。

第一行输入一个整数 T T T,表示测试数据组数。

接下来依次输入每组测试数据,对于每组测试数据,输入一行六个整数 c 1 , c 2 , c 3 , d 1 , d 2 , d 3 c_1,c_2,c_3,d_1,d_2,d_3 c1,c2,c3,d1,d2,d3。

输出格式

对于每组测试数据,输出一行:

  • 若双方在都进行最优策略的情况下,小 C 可以获胜,则输出 C

  • 若双方在都进行最优策略的情况下,小 D 可以获胜,则输出 D

  • 若双方在都进行最优策略的情况下,游戏会平局,即谁也无法获胜,则输出 E

样例 #1

样例输入 #1

复制代码
3
3 1 4 1 5 9
1 1 4 5 1 4
5 2 1 2 6 3

样例输出 #1

复制代码
C
D
E

提示

【样例解释 #1】

对于第一组数据,小 C 可以先出一张斩,并在小 D 回应一张杀后再出一张斩。此时小 D 的杀用完了,无法做出回应,输掉了游戏。

【样例 #2】

见附加文件中的 game/game2.ingame/game2.ans

【数据范围】

对于 100 % 100\% 100% 的数据, 1 ≤ T ≤ 1 0 5 1 \le T \le 10^5 1≤T≤105, 0 ≤ c 1 , c 2 , c 3 , d 1 , d 2 , d 3 ≤ 1 0 9 0 \le c_1,c_2,c_3,d_1,d_2,d_3 \le 10^9 0≤c1,c2,c3,d1,d2,d3≤109。

测试点编号 特殊性质
1 ∼ 3 1\sim3 1∼3 保证 c 3 = d 3 = 0 c_3=d_3=0 c3=d3=0
4 ∼ 6 4\sim6 4∼6 保证 c 1 = d 2 c_1=d_2 c1=d2 且 c 2 = d 1 c_2=d_1 c2=d1
7 ∼ 10 7\sim10 7∼10
cpp 复制代码
#include<iostream>
#include<algorithm>
#include<cstring>
#include<string>
using namespace std;
int t, c1, c2, c3, d1, d2, d3;
int main()
{
    cin >> t;
    while (t--)
    {
        cin >> c1 >> c2 >> c3 >> d1 >> d2 >> d3;
        if (c1 > d2 || c3 > d1) cout << "C" << endl;
        //先手的杀大于后手的闪或者先手的斩大于后手的杀
        else if ((d1-c3> c2 || d3 > c1)) cout << "D" << endl;
        //注意后手的杀可能会被斩耗掉一些所以有d1-c3
        else cout << "E" << endl;
    }
    return 0;
}
相关推荐
Zhichao_9721 分钟前
【UE5.3 C++】ARPG游戏 02-创建Pawn(以乌鸦为例)
游戏·ue5
无才顽石41 分钟前
什么是数学
算法·数理象
峥无1 小时前
《二叉搜索树:动态数据管理的利器,平衡树的基石》
开发语言·c++·二叉搜索树
CoderCodingNo1 小时前
【GESP】C++五级真题(数论, 贪心思想考点) luogu-B4070 [GESP202412 五级] 奇妙数字
开发语言·c++·算法
百***58841 小时前
MATLAB高效算法实战技术文章大纲1
人工智能·算法·matlab
AAA.建材批发刘哥1 小时前
04--C++ 类和对象下篇
linux·c++·经验分享·青少年编程
hans汉斯1 小时前
【人工智能与机器人研究】自动移液设备多轴运动控制系统设计
算法·机器学习·3d·自然语言处理·机器人·硬件架构·汉斯出版社
stolentime1 小时前
洛谷P4417 [COCI 2006/2007 #2] STOL 题解
c++·coci
guygg881 小时前
经典信道估计MATLAB实现(含LSMMSE算法)
深度学习·算法·matlab
CoderCodingNo2 小时前
【GESP】C++五级真题(数论考点) luogu-P11961 [GESP202503 五级] 原根判断
开发语言·c++