Hackerrank测试用例未通过但输出正确:Numpy数组reshape问题排查
问题原因
你的代码存在两个明确的问题,直接导致无法通过Hackerrank判题:
- 输入函数添加了不必要的提示文本:
input("Number: ")中的"Number: "提示会被输出到标准输出流,Hackerrank的判题逻辑只会匹配预期的数组输出内容,额外输出的提示字符会直接触发结果不匹配报错。 - 输入处理逻辑不规范:你逐字符遍历输入、跳过空格提取数字的写法,仅在本题数字都是个位数的场景下能正常运行,既不符合通用空格分隔输入的处理标准,也存在多空格、首尾空格、制表符分隔等场景下的兼容风险。
修复方案
直接按如下逻辑修改代码即可:
import numpy as np # 直接读取输入,split按任意空白切分后转整数列表 nums = list(map(int, input().split())) # 转换为numpy数组后重塑 res = np.array(nums).reshape(3,3) print(res)
内容的提问来源于stack exchange,提问作者badmood111
相关产品推荐
相关产品推荐

