You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C#开发简易乐透宾果游戏时一维与二维数组匹配问题求助

C# 宾果游戏中奖判定解决方案

核心逻辑说明

你需要校验的是乐透卡上任意整行、任意整列、两条对角线的所有数字,全部存在于用户输入的7个数字中,即为中奖。

第一步:优化查询效率

将用户输入的数组转成HashSet,O(1)时间复杂度即可判断数字是否存在,避免多次遍历数组:

HashSet<int> userNumberSet = new HashSet<int>(userNmr);

第二步:替换校验逻辑

直接替换你注释// --- This is where im stuck --- 后的所有代码即可:

bool isBingo = false;
int size = 5;

// 1. 校验所有行
for (int i = 0; i < size; i++)
{
    bool rowAllMatch = true;
    for (int j = 0; j < size; j++)
    {
        if (!userNumberSet.Contains(lottoCard[i, j]))
        {
            rowAllMatch = false;
            break;
        }
    }
    if (rowAllMatch)
    {
        isBingo = true;
        break;
    }
}

// 未命中再校验列
if (!isBingo)
{
    for (int j = 0; j < size; j++)
    {
        bool colAllMatch = true;
        for (int i = 0; i < size; i++)
        {
            if (!userNumberSet.Contains(lottoCard[i, j]))
            {
                colAllMatch = false;
                break;
            }
        }
        if (colAllMatch)
        {
            isBingo = true;
            break;
        }
    }
}

// 未命中再校验对角线
if (!isBingo)
{
    bool diag1AllMatch = true;
    for (int i = 0; i < size; i++)
    {
        if (!userNumberSet.Contains(lottoCard[i, i]))
        {
            diag1AllMatch = false;
            break;
        }
    }
    if (diag1AllMatch) isBingo = true;
}

if (!isBingo)
{
    bool diag2AllMatch = true;
    for (int i = 0; i < size; i++)
    {
        if (!userNumberSet.Contains(lottoCard[i, size - 1 - i]))
        {
            diag2AllMatch = false;
            break;
        }
    }
    if (diag2AllMatch) isBingo = true;
}

if (isBingo)
{
    Console.WriteLine("BINGO!");
}
else
{
    Console.WriteLine("No win . . .");
}

原有失败方案的问题说明

  • 方案1逻辑完全偏离,是校验两个数组的维度、长度、元素完全一致,和你的中奖规则没有关系
  • 方案2参数用了锯齿数组int[][],但你声明的乐透卡是二维数组int[,],类型不匹配无法运行,同时逻辑是查找连续子序列,不符合整行/列全匹配的要求

可选优化建议

  • 目前你生成的乐透卡可能存在重复数字,正规宾果卡的25个数字是1-25不重复的,你可以在生成阶段加去重逻辑
  • 用户输入阶段可以加校验,避免重复输入、超出范围的数字

内容的提问来源于stack exchange,提问作者5for5

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 08:36:03