C++知识点总结(23):高级模拟算法真题 ★★★☆☆《骰子游戏》

news/2024/11/29 6:32:23/

骰子游戏

1. 审题

題目描述

E r i c Eric Eric 最近在澳门旅游,澳门游乐场有这样一个骰子游戏,他们使用三颗六面骰子,游戏规则如下:点数的优先级是 6 6 6 5 5 5 4 4 4 3 3 3 2 2 2 1 1 1,当三个骰子的点数都相同时,称为“豹子”,豹子按点数优先级比较大小;当两个骰子的点数相同时,称为“对子”,所有对子都按剩余骰子的点数优先级比较;其他情况称为“点子”,点子按点数和比较大小;豹子比对子、点子大,对子比点子大,现在 E r i c Eric Eric 需要和电脑先模拟投骰子的情况,请你来判断一下胜负情况(没有为什么,总是我们来帮忙 )。

输入描述

第一行为一个正整数 n n n,表示一共有 n n n 次游戏,以后每两行表示一个样例,第一行是 E r i c Eric Eric 骰子的点数,第二行为电脑骰子的点数。

输出描述

输出有 n n n 行,如果是 E r i c Eric Eric 赢,则输出 "Eric",如果是电脑赢,则输出 "Computer",其他情况都输出 "Balance"

2. 参考答案

  • 伪核心代码
getsum(a[])if (a[0] == a[1] && a[0] == a[2])return a[0] + 25if (a[0] == a[1])return a[2] + 15if (a[0] == a[2])return a[1] + 15if (a[1] == a[2])return a[0] + 15return a[0] + a[1] + a[2]
  • AC代码
#include <iostream>
using namespace std;int n;
int eric[5], computer[5];
int sumeric, sumcomputer;int getsum(int a[])
{if (a[0] == a[1] &&  a[0] == a[2]) // 豹子{return a[0] + 25;}if (a[0] == a[1]) // 对子{return a[2] + 15;}if (a[0] == a[2]) // 对子{return a[1] + 15;}if (a[1] == a[2]) // 对子{return a[0] + 15;}return a[0] + a[1] + a[2]; // 其他情况
}int main()
{cin >> n;for (int i = 1; i <= n; i++){cin >> eric[0] >> eric[1] >> eric[2];cin >> computer[0] >> computer[1] >> computer[2];// 计算胜负sumeric = getsum(eric);sumcomputer = getsum(computer);if (sumeric > sumcomputer){cout << "Eric\n";}else if (sumcomputer > sumeric){cout << "Computer\n";}else{cout << "Balance\n";}}return 0;
}

http://www.ppmy.cn/news/1379676.html

相关文章

Java HashMap 和 HashSet 的高效使用技巧

Java HashMap HashMap 是一种哈希表&#xff0c;它存储键值对。键用于查找值&#xff0c;就像数组中的索引一样。HashMap 的优势在于它可以使用任何类型作为键&#xff0c;并且查找速度很快。 创建 HashMap // 导入 HashMap 类 import java.util.HashMap;public class Main …

java Day7 正则表达式|异常

文章目录 1、正则表达式1.1 常用1.2 字符串匹配&#xff0c;提取&#xff0c;分割 2、异常2.1 运行时异常2.2 编译时异常2.3 自定义异常2.3.1 自定义编译时异常2.3.2 自定义运行时异常 1、正则表达式 就是由一些特定的字符组成&#xff0c;完成一个特定的规则 可以用来校验数据…

JS-10-函数

一、函数的定义 function 函数名(参数列表) {// 函数体 } 示例&#xff1a; function abs(x) {if (x > 0) {return x;} else {return -x;} } 请注意&#xff0c;函数体内部的语句在执行时&#xff0c;一旦执行到return时&#xff0c;函数就执行完毕&#xff0c;并将结果…

Python 学习——Python BeautifulSoup 库文档

目录 一、 Beautiful Soup 4.4.0 文档1.1 寻求帮助 二、 快速开始三、 安装 Beautiful Soup3.1 安装完成后的问题3.2 安装解析器 四、 如何使用五、 对象的种类5.1 Tag5.1.1 Name5.1.2 Attributes5.1.3 多值属性 5.2 可以遍历的字符串5.3 BeautifulSoup5.4 注释及特殊字符串 六…

计网《一》|互联网结构发展史|标准化工作|互联网组成|性能指标|计算机网络体系结构

计网《一》| 概述 计算机网络在信息时代的作用为什么说互联网是自印刷术以来人类在存储和交换领域的最大变革&#xff1f; 什么是互联网呢&#xff1f;互联网有什么用呢&#xff1f;为什么互联网能为用户提供许多服务 互联网基础结构发展的三个阶段第一个阶段&#xff1a;第二阶…

JMM(Java Memory Model)内存模型

Java内存模型&#xff0c;规范了计算机内存与java虚拟机之间的协调工作&#xff0c;即规定了 将java 虚拟机中的变量存储到内存中和从内从中取出来的内存细节。 Java内存模型中规定了所有的变量都存储在内存中&#xff0c;每条线程还有自己的工作内存&#xff0c;线程对变量的…

《C++游戏编程入门》第1章 类型、变量与标准I/O: Lost Fortune

《C游戏编程入门》第1章 类型、变量与标准I/O: Lost Fortune 1.1.1 使用C编写游戏1.1.2 生成可执行文件1.1.3 错误处理 1.2 第一个C程序01.game_over.cpp01.game_over2.cpp01.game_over3.cpp 1.4 使用算术运算符01.expensive_calculator.cpp 1.5 声明和初始化变量01.game_stats…

探索容器技术的世界:从 Docker 到 Podman,从 Kubernetes 到生态发展

随着云计算和微服务架构的兴起&#xff0c;容器技术在近年来迅速发展。Docker 是最早引领容器技术革命的先驱&#xff0c;但随着市场的变化和需求的不断演变&#xff0c;一些新的容器技术也开始崭露头角&#xff0c;例如 Podman。同时&#xff0c;容器编排工具 Kubernetes 也在…