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

Project Euler第11题Python实现问题:垂直方向迭代输出重复异常排查

Project Euler 第11题:垂直方向遍历乘积计算卡壳求助

我最近在啃Project Euler第11题,计划先实现4个不同遍历方向的循环,第一个先搞定垂直方向的逻辑:从20×20网格的左上角开始,先计算首行对应位置连续4个数值的乘积,然后下移一行重复同样的乘法操作,完成16次迭代后停止。

为了验证功能是否正确,我需要打印所有迭代结果,确认能生成360个唯一数值;后续还打算修改代码:初始设置figure=0,每次迭代时把生成的乘积和当前figure对比,要是乘积更大就更新figure的值。

但现在代码跑起来后,输出结果是同一组20个数值重复16次,这可把我难住了。我想不参考现有答案,自己搞定这个问题,以下是我的代码:

twenmat = [20*20 matrix]  # 此处为实际的20×20数值矩阵
newlist = []
figure = 0
for items in twenmat:
    for x in range(0,20):
        y = 0
        newlist.append(twenmat[0+y][x]*twenmat[1+y][x]*twenmat[2+y][x]*twenmat[3+y][x])
        y = y + 1
        if y == 16:
            break
print(newlist)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.29 04:02:31