当前位置: 首页 > news >正文

L1-093 猜帽子游戏(Java)

宝宝们在一起玩一个猜帽子游戏。每人头上被扣了一顶帽子,有的是黑色的,有的是黄色的。每个人可以看到别人头上的帽子,但是看不到自己的。游戏开始后,每个人可以猜自己头上的帽子是什么颜色,或者可以弃权不猜。如果没有一个人猜错、并且至少有一个人猜对了,那么所有的宝宝共同获得一个大奖。如果所有人都不猜,或者只要有一个人猜错了,所有宝宝就都没有奖。
下面顺序给出一排帽子的颜色,假设每一群宝宝来玩的时候,都是按照这个顺序发帽子的。然后给出每一群宝宝们猜的结果,请你判断他们能不能得大奖。

输入格式:

输入首先在一行中给出一个正整数 N(2<N≤100),是帽子的个数。第二行给出 N 顶帽子的颜色,数字 1 表示黑色,2 表示黄色。
再下面给出一个正整数 K(≤10),随后 K 行,每行给出一群宝宝们猜的结果,除了仍然用数字 1 表示黑色、2 表示黄色之外,0 表示这个宝宝弃权不猜。
同一行中的数字用空格分隔。

输出格式:

对于每一群玩游戏的宝宝,如果他们能获得大奖,就在一行中输出 Da Jiang!!!,否则输出 Ai Ya。

输入样例:

5
1 1 2 1 2
3
0 1 2 0 0
0 0 0 0 0
1 2 2 0 2

输出样例:

Da Jiang!!!
Ai Ya
Ai Ya

解题思路

  1. 读取输入:首先,我们需要从输入中获取帽子的数量、颜色以及宝宝们的猜测。
  2. 逻辑判断:根据游戏规则,如果没有人猜错且至少有一个人猜对,宝宝们就能获得奖励。这意味着我们需要比较每个宝宝的猜测与实际颜色,并应用游戏规则。
  3. 输出结果:根据宝宝们的猜测是否符合获奖条件,输出相应的结果。

解题过程中遇到的问题

代码

import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);// 读取帽子数量int N = scanner.nextInt();int[] hats = new int[N];// 读取帽子颜色for (int i = 0; i < N; i++) {hats[i] = scanner.nextInt();}// 读取宝宝组数int K = scanner.nextInt();for (int i = 0; i < K; i++) {int[] guesses = new int[N];boolean guessed = false;boolean correct = true;// 读取每个宝宝的猜测for (int j = 0; j < N; j++) {guesses[j] = scanner.nextInt();if (guesses[j] != 0) {guessed = true;if (guesses[j] != hats[j]) {correct = false;}}}// 判断是否获得大奖if (guessed && correct) {System.out.println("Da Jiang!!!");} else {System.out.println("Ai Ya");}}}
}
http://www.lryc.cn/news/286685.html

相关文章:

  • JVM篇--JVM调优高频面试题
  • 微软 AD 介绍 | 安全建议 | 防护
  • React16源码: React中的reconcileChildren的源码实现
  • 幻兽帕鲁Docker服务端搭建
  • 【ARM Cortex-M 系列 1.1 -- Cortex-M33 与 M4 差异 详细介绍】
  • docker 部署及命令
  • API接口安全总结
  • 性能优化-HVX 指令介绍
  • web安全思维导图(白帽子)
  • 美,英,法,德、意大利和西班牙的geojson,以及区域json
  • JavaEE-微服务-Vuex
  • 在Windows虚拟机中挂载IP代理的流程
  • 软考之软件工程
  • 微信小程序(六)tabBar的使用
  • 写Shell以交互方式变更Ubuntu的主机名
  • SpringBoot整合ElasticSearch实现基础的CRUD操作
  • 【PyTorch】记一次卷积神经网络优化过程
  • C++面试宝典第24题:袋鼠过河
  • 2401vim,vim标号
  • Web开发中HTTP请求、响应等相关知识
  • [Android] Android文件系统中存储的内容有哪些?
  • 透明拼接屏在汽车领域的应用
  • “深入理解RabbitMQ交换机的原理与应用“
  • Programming Abstractions in C阅读笔记:p248-p253
  • 面试题目,你对前端工程化的了解
  • 2023年春秋杯网络安全联赛冬季赛 Writeup
  • docker安装Rabbitmq教程(详细图文)
  • java web mvc-05-JSF JavaServer Faces 入门例子
  • yolov8 训练voc数据集
  • Python笔记12-多线程、网络编程、正则表达式