牛客算法周周练13-E金币馅饼

金币馅饼

https://ac.nowcoder.com/acm/contest/6173/E

题意:就从(1,1)出发终点是(n,m),每次移动只能向右一格,并且纵坐标变化不能大于1,路径上的金币都能吃到,问最大金币。
题解:看到这题就很自然的觉得是个dp(雾),然后问操作的时候注意了一下 当i>j的地方是到不了的,所以dp数组初值为0,然后就是一个很简单的dp啦

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
int n,m;
const int N=105;
int a[N][N];
int dp[N][N];
int main() {
    cin>>n>>m;
    for (int i=1;i<=n;i++)
        for (int j=1;j<=m;j++)
            scanf("%d",&a[i][j]);
    for (int i=1;i<=n;i++)
        for (int j=1;j<=m;j++)
            if (j>=i)
                dp[i][j]=a[i][j];
    for (int j=1;j<=m;j++)
        for (int i=1;i<=n;i++)
            dp[i][j]+=max(dp[i-1][j-1],max(dp[i][j-1],dp[i+1][j-1]));
    cout<<dp[n][m]<<endl;
    return 0;
}


全部评论

相关推荐

大厂的边缘业务去了也没啥用,也得不到任何成长,尤其是审核、中台这种价值产出不清楚的,别被大厂光环蒙蔽了双眼,如果你找实习工作,优先找"离钱近的业务",钱多的业务福利年终奖啥的都不会差的
陈100:呵呵。 你在大厂工作2年,后面准备好,可以随便跳很多公司。 去小厂,现在拿到所谓多的钱,有啥用啊,未来没有了。 而且应届生,工作没几年的,也不是赚钱的时间。
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务