落幽之殇 level
获赞
2
粉丝
0
关注
0
看过 TA
0
广州技术师范大学
2026
算法工程师
IP属地:上海
暂未填写个人简介
私信
关注
https://ac.nowcoder.com/acm/contest/86034/E第一次交的时候只的了175分。赛后我想了好久,原因是dp是按顺序更新权值,而每个点可以绕远路(远的地方权值还不是最优的),所以更新一次dp不够,再加个for循环多次更新dp数组就可以ac了。如有误请指正 #include <iostream> #include <string> #include <algorithm> #include <cmath> #include <cstring> #include<vector> #includ...
猪颈斑鸠:这样做不对,下面这个数据就过不了。除非p的循环次数改成n^2(绕路的最多次数),这样就超时了 9 1 4 1 1 1 4 1 1 1 1 4 1 4 1 4 1 4 1 1 4 1 4 1 4 1 4 1 1 4 1 4 1 4 1 4 1 1 4 1 4 1 4 1 4 1 1 4 1 4 1 4 1 4 1 1 4 1 4 1 4 1 4 1 1 4 1 4 1 4 1 4 1 1 1 1 4 1 1 1 4 1 如果从左上往右下更新,第一次得到的是走2*n-1步到终点的结果,第二次更新得到的是最多走2*n+1步到终点的结果,每次更新只能得到比上一次多走两步(往上或者往左走一步再回去,共两步)的结果(只有从右边和下边更新数据的时候才会多走一步,从dp左上往右下更新,当前循环中从右边或者下边更新数据都是上一次循环的结果,每次循环只会比上次多一步),感觉这题就不是个线性的dp,得用搜索做
0 点赞 评论 收藏
分享

创作者周榜

更多
关注他的用户也关注了:
牛客网
牛客网在线编程
牛客网题解
牛客企业服务