线性DP--BOX

还没学,等学完再仔细写。

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
ll a[1000010];
ll vis[1000010];
ll f[1000010][3];
int main()
{
    ll n,m;
    cin>>n;
    for(int i=1;i<=n;i++)
    {
        cin>>a[i];
    }
    for(int i=1;i<=n;i++)
    {
        cin>>vis[i];
    }
    for(int i=1;i<=n;i++)
    {
        if(vis[i]==1)
        {
            f[i][0]=max(f[i-1][0]+a[i-1],f[i-1][1]);
            f[i][1]=max(f[i-1][0],f[i-1][1])+a[i];
            f[i][2]=max(f[i-1][0],max(f[i-1][1],f[i-1][2]))+a[i+1];
        }
        if(vis[i]==0)
        {
            f[i][0]=max(f[i-1][0],f[i-1][1]);
            f[i][1]=f[i-1][2];
            //f[i][2]=
        }
    }

    cout<<max(f[n][0],max(f[n][1],f[n][2]))<<endl;
    return 0;
}
相关推荐
Lhan.zzZ4 分钟前
笔记_2026.4.28_004
c++·ide·笔记·qt
wuminyu2 小时前
专家视角看Java字节码加载与存储指令机制
java·linux·c语言·jvm·c++
木喃的井盖2 小时前
无锁队列细节
c++·工程
王老师青少年编程3 小时前
csp信奥赛C++高频考点专项训练之字符串 --【字符串基础】:输出亲朋字符串
c++·字符串·csp·高频考点·信奥赛·专项训练·输出亲朋字符串
MediaTea3 小时前
AI 术语通俗词典:C4.5 算法
人工智能·算法
Navigator_Z3 小时前
LeetCode //C - 1033. Moving Stones Until Consecutive
c语言·算法·leetcode
WBluuue3 小时前
数据结构与算法:莫队(一):普通莫队与带修莫队
c++·算法
风筝在晴天搁浅4 小时前
n个六面的骰子,扔一次之后和为k的概率是多少?
算法
KuaCpp4 小时前
C++面向对象(速过复习版)
开发语言·c++
MATLAB代码顾问5 小时前
Python实现蜂群算法优化TSP问题
开发语言·python·算法