hebabshan 2023-03-31 00:28 采纳率: 75%
浏览 22
已结题

关于洛谷python答题出现re

洛谷 python答题 re和ac 同时出现如何解决

img

img

n,m,x1,y1=map(int,input().split())
st=[[0]*n for i in range(m)]
for i in range(n):
    for j in range(m):
        st[i][j]=[i,j,-1]
st[x1-1][y1-1][2]=0
xx=[-2,-2,2,2,-1,-1,1,1]
yy=[-1,1,-1,1,2,-2,2,-2]
q=[st[x1-1][y1-1]]
while q:
    ji=q.pop(0)
    for i in range(8):
        a=ji[0]+xx[i]
        b=ji[1]+yy[i]
        if a<0 or a>n-1 or b<0 or b>m-1:
            continue
        if st[a][b][2]!=-1:
            continue
        st[a][b][2]=st[ji[0]][ji[1]][2]+1
        q.append(st[a][b])
for i in range(n):
    for j in range(m):
        print(st[i][j][2],end='\t')
    print('')


  • 写回答

2条回答 默认 最新

  • 请叫我问哥 Python领域新星创作者 2023-03-31 10:12
    关注

    RE是Runtime Error,一般是指代码报错了
    分享一下我的AC代码

    n, m, x, y = map(int, input().split())
    
    ans = [[-1]*m for _ in range(n)]
    ans[x-1][y-1] = 0
    from collections import deque
    q = deque()
    q.append((x-1, y-1))
    d = ((-2, 1), (-1, 2), (1, 2), (2, 1), (2, -1), (1, -2), (-1, -2), (-2, -1))
    while q:
        r, c = q.popleft()
        for x, y in d:
            xx = r + x
            yy = c + y
            if 0 <= xx < n and 0 <= yy < m and ans[xx][yy] < 0:
                ans[xx][yy] = ans[r][c] + 1
                q.append((xx, yy))
    for i in ans:
        print(*i)
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 4月8日
  • 已采纳回答 3月31日
  • 创建了问题 3月31日

悬赏问题

  • ¥15 CATIA有些零件打开直接单机确定终止
  • ¥15 请问有会的吗,用MATLAB做
  • ¥15 phython如何实现以下功能?查找同一用户名的消费金额合并—
  • ¥15 ARIMA模型时间序列预测用pathon解决
  • ¥15 孟德尔随机化怎样画共定位分析图
  • ¥18 模拟电路问题解答有偿速度
  • ¥15 CST仿真别人的模型结果仿真结果S参数完全不对
  • ¥15 误删注册表文件致win10无法开启
  • ¥15 请问在阿里云服务器中怎么利用数据库制作网站
  • ¥60 ESP32怎么烧录自启动程序,怎么查看客户esp32板子上程序及烧录地址