题解 | 字母收集

字母收集

https://www.nowcoder.com/practice/9740ce2df0a04399a5ade1927d34c1e1

#include <bits/stdc++.h>
using namespace std;

const int N = 520;
int n,m,dp[N][N],ans;
char g[N][N];

int main(){
    cin>>n>>m;
    for(int i = 1;i<=n;i++) scanf("%s",g[i]+1);

    for(int i = 1;i<=n;i++){
        for(int j = 1;j<=m;j++){
            dp[i][j] = max(dp[i-1][j],dp[i][j-1]);
            if(g[i][j]=='l') dp[i][j] += 4 ;
            else if(g[i][j]=='o') dp[i][j] += 3;
            else if(g[i][j]=='v') dp[i][j] += 2;
            else if(g[i][j]=='e') dp[i][j]++;
            ans = max(ans,dp[i][j]);
        }
    }
    cout<<ans;

    return 0;
}

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

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