fhloj1090 21点游戏

21点游戏

源文件: poker(.bas/.c/.cpp/.pas)
输入文件: poker.in
输出文件: poker.out

小明和他的同学们最近痴迷一种叫做21点的纸牌游戏。游戏规则很简单,游戏一共需要两名玩家,两人分别从牌堆里面选取若干张牌。每张牌都有一个点数,每个玩家的点数就是手里存有的牌的点数之和。值得注意的是,如果一个玩家的点数超过21点,那么这名玩家的点数就会变成0。两名玩家通过比较各自的点数大小决定游戏的胜负,点数大的玩家获胜。现在我们把小明和他对手玩家的手牌告诉你,请你通过程序判断出他们的胜负,或者是平局。

输入数据的第一行是一个整数N(0<N<=10),代表游戏总局数。接下来有N组数据,每组数据的第一行有两个整数,m和n(0<m, n<=10)。m代表小明手里有m张牌,n代表小明的对手玩家手里有n张牌。接下来会有两行数据。第一行数据包含m个不超过13的正整数,代表小明每张手牌的点数,第二行数据包含n个不超过13的正整数,代表小明对手玩家每张手牌的点数。

输出数据有N行。对于第i(1<=i<=N)局游戏,在第i行输出判定结果。如果小明获胜,输出Win;如果小明的对手玩家获胜,输出Lose;如果双方点数相同,输出Draw。请同学们注意Win,Lose和Draw三个单词都需要首字母大写。

【样例输入】
2
2 2
10 11
11 11
3 3
2 2 2
1 2 3

【样例输出】
Win
Draw

【说明】

解题思路
1. 求和比较
2. 求和规则,超过21点记为0分
3. 多个test case,考察对输入和输出的控制能力


#include <stdio.h>
#include <stdlib.h>

int main (int argc, char const* argv[])
{
int a, b, c, m, n, i, t;

scanf("%d", &c);
while (c--) {
scanf("%d %d", &m, &n);

a = 0;
for (i = 0; i < m; i++) {
scanf("%d", &t);
a += t;
}
if (a > 21) a = 0;

b = 0;
for (i = 0; i < n; i++) {
scanf("%d", &t);
b += t;
}
if (b > 21) b = 0;

if (a > b) {
printf("Win\n");
} else if (a == b) {
printf("Draw\n");
} else {
printf("Lose\n");
}
}

return 0;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
站用交流系统断路器保护灵敏度校验整改及剩余电流监测试应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试应用站用交流系统断路器保护灵敏度校验整改及剩余电流监测试应用站用交流系统断

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值