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

Testdome船只移动题目代码测试失败,求排查思路

问题

我的PHP代码在Testdome的测试中未通过,测试结果如下:

  • 示例用例:答案正确
  • 所有坐标在网格内:答案错误
  • 部分坐标在网格外:答案错误

我检查了路径中所有值(包括起点和终点)是否存在于$gameMatrix数组中,认为只要值为true或false,就表示该坐标在网格内。我尝试了各种边缘情况的自定义单元测试,但无法复现失败场景。还尝试添加了船只的最大移动距离限制,但似乎不是问题所在,题目文档中也未提及该限制。

我的代码:

<?php
/**
 * @return boolean The destination is reachable or not
 */
function canTravelTo(array $gameMatrix, int $fromRow, int $fromColumn, 
                     int $toRow, int $toColumn) : bool
{
    if($fromRow == $toRow){ // 水平移动
        // if(abs($fromColumn - $toColumn) > 2) 
        //     return false; // 超出移动范围?
        $toCheck = range($fromColumn, $toColumn);
        foreach($toCheck as $col){
            if(!isset($gameMatrix[$fromRow][$col]))
                return false; // 超出边界
            if(!$gameMatrix[$fromRow][$col])
                return false; // 路径被阻挡
        }
        return true;
    }elseif($fromColumn == $toColumn){ // 垂直移动
        // if(abs($fromRow - $toRow) > 2) 
        //     return false; // 超出移动范围?
        $toCheck = range($fromRow, $toRow);
        foreach($toCheck as $row){
            if(!isset($gameMatrix[$row][$fromColumn]))
                return false; // 超出边界
            if(!$gameMatrix[$row][$fromColumn])
                return false; // 路径被阻挡
        }
        return true;
    }else{
        // 不允许对角线移动
        return false;
    }
}

$gameMatrix = [
    [false, true,  true,  false, false, false],
    [true,  true,  true,  false, false, false],
    [true,  true,  true,  true,  true,  true],
    [false, true,  true,  false, true,  true],
    [false, true,  true,  true,  false, true],
    [false, false, false, false, false, false],
  ];
  

echo canTravelTo($gameMatrix, 3, 2, 2, 2) ? "true\n" : "false\n"; // 合法移动,输出true
echo canTravelTo($gameMatrix, 3, 2, 3, 4) ? "true\n" : "false\n"; // 无法穿过障碍,输出false
echo canTravelTo($gameMatrix, 3, 2, 6, 2) ? "true\n" : "false\n"; // 超出边界,输出false

请问我遗漏了什么明显的问题吗?

内容的提问来源于stack exchange,提问作者Esben Tind

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.24 10:13:15