栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

【蓝桥杯模拟赛】【跳跃问题】python

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【蓝桥杯模拟赛】【跳跃问题】python

#跳跃100分
#输入数据
i=list(map(int,input().split()))
n=i[0]
m=i[1]
num=[]
for i in range(n):
    hang=list(map(int,input().split()))
    num0=[]
    for j in range(m):
        num0.append(hang[j])
    num.append(hang)

#动态规划
step=[[0 for i in range(m)]for j in range(n)]
step[0][0]=num[0][0]
for i in range(n):
    for j in range(m):
        if(i==n and j==m):
            pass
        else:
            for x in range(min(i,n-1),min(i+3,n)):
                for y in range(min(j,m-1),min(j+3,m)):
                    if(x+y-i-j<4 and x+y-i-j>0):
                        step[x][y]=max(step[x][y],step[i][j]+num[x][y])
                    else:
                        pass
print(step[n-1][m-1])           

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/768873.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号