样例过,满江红
查看原帖
样例过,满江红
1122046
osmium_dust楼主2025/1/22 17:42

怒发冲冠!凭栏处!

#include <bits/stdc++.h>
using namespace std;
int tms[21];
int dp[21];
int pts[21];
string k;
int n,m;
int main(){
    cin>>n;
    for(int i=1;i<=n;i++)
        cin>>pts[i];
    for(int i=1;i<=n;i++){
    dp[i]=pts[i];
    for(int j=1;j<i;j++)
        dp[i]=max(dp[i-j]+dp[j],dp[i]);
    }
    cin>>m;
    cin>>k;
    int combo=0;
    k+="PPPPPPPP";
    for(int i=0;i<k.size();){
        if(k[i++]=='a'){if(k[i++]=='b'){if(k[i++]=='c'){
            combo++;
            continue;
        }}}
        tms[combo]++;
        combo=0;
    }
    int ans=0;
    for(int i=1;i<=n;i++){
        ans+=dp[i]*tms[i];
    }cout<<ans;
}


2025/1/22 17:42
加载中...