C# 猜帽子游戏代码实现 - 判断宝宝们是否能获得大奖

输入格式:

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

输出格式:

对于每一群玩游戏的宝宝,如果他们能获得大奖,就在一行中输出'大奖',否则输出'哎呀'。

代码实现:

using System;

class Program
{
    static void Main(string[] args)
    {
        // 读取输入
        int N = int.Parse(Console.ReadLine());
        int[] colors = new int[N];
        string[] colorStrs = Console.ReadLine().Split(' ');
        for (int i = 0; i < N; i++)
        {
            colors[i] = int.Parse(colorStrs[i]);
        }

        int K = int.Parse(Console.ReadLine());
        for (int i = 0; i < K; i++)
        {
            string[] guessStrs = Console.ReadLine().Split(' ');
            int[] guesses = new int[N];
            for (int j = 0; j < N; j++)
            {
                guesses[j] = int.Parse(guessStrs[j]);
            }

            // 判断是否获得大奖
            bool win = true;
            for (int j = 0; j < N; j++)
            {
                if (guesses[j] != 0 && guesses[j] != colors[j])
                {
                    win = false;
                    break;
                }
            }

            // 输出结果
            if (win)
            {
                Console.WriteLine('大奖');
            }
            else
            {
                Console.WriteLine('哎呀');
            }
        }
    }
}

代码解释:

  1. 读取输入:首先读取帽子的数量N和帽子的颜色,并将其存储到数组中。接着读取宝宝们的猜的数量K,并循环读取每一组宝宝的猜结果,存储到数组中。
  2. 判断是否获得大奖:遍历每顶帽子,判断宝宝的猜结果是否与实际颜色一致。如果有一顶帽子猜错,则判定为失败。
  3. 输出结果:根据判断结果,输出'大奖'或'哎呀'。

使用说明:

  1. 将代码保存为.cs文件,例如:HatGame.cs
  2. 在命令行中使用以下命令编译代码:
  csc HatGame.cs
  1. 运行编译后的可执行文件,按照输入格式输入数据,即可得到程序的输出结果。

代码示例:

输入:

3
1 2 1
2
1 2 0
1 0 2

输出:

哎呀
大奖

备注:

该代码仅供参考,可以根据实际需要进行修改和完善。例如,可以增加更多的帽子颜色、修改判断逻辑等。


原文地址: https://www.cveoy.top/t/topic/pl5O 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录