nico和niconiconi

nico和niconiconi

https://ac.nowcoder.com/acm/contest/3002/I

nico和niconiconi
https://ac.nowcoder.com/acm/contest/3002/I
图片说明

本次使用动规dp
(每一步对于之前都是最优,可以从局部入手)
开个数组dp存储“成本”

#pragma warning (disable :4996)
#include <iostream>
#include <cstdio>
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const ll modd = 1e9 + 7;
const int INF = 0xffffff;

ll dp[300010];
string S;
int main()
{
    int n, a, b, c;
    scanf("%d %d %d %d", &n, &a, &b, &c);
    getchar();
    cin >> S;
    for (int i = 0; i < n; i++) {
        if (i > 0)
            dp[i] = dp[i - 1];
        if (i >= 3) {
            if (S.substr(i - 3, 4) == "nico")
                dp[i] = max(dp[i], dp[i - 3] + a);
        }
        if (i >= 5) {
            if (S.substr(i - 5, 6) == "niconi")
                dp[i] = max(dp[i], dp[i - 5] + b);
        }
        if (i >= 9) {
            if (S.substr(i - 9, 10) == "niconiconi")
                dp[i] = max(dp[i], dp[i - 9]+c);
        }
    }
    cout << dp[n - 1] << endl;
}
全部评论

相关推荐

程序员花海:实习太简单了 学历可以的 实习描述应该是先介绍业务 再介绍技术 技术咋推动业务的 做到了啥收益 有没有做实验 实验组和对照组有什么不同 你最后学到了什么 有没有参与处理过线上问题 有没有参与过公司的code review 有没有参与过技术分享 这些都是可以在实习描述中写的 并且实习和项目不一样不会撞车 应该放在最前面 放在教育背景下面 另外项目有点烂大街 可以看下我主页的简历优化案例
点赞 评论 收藏
分享
双尔:你就写拥有ai开发经历,熟练运用提示词,优化ai,提高ai回答质量
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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