@[aldzsfs](/user/958865) 我看看哈
by chen_z @ 2023-07-29 18:56:05
让我瞅瞅,你人还在吗?
by 15167987933yy @ 2023-07-31 14:44:04
我是这么写的,你看看对你有帮助不。
```c
#include<iostream>
#include<algorithm>
#include<cstdio>
#include<cstring>
#include<string>
using namespace std;
int p,n,m,k,dp[210][50],sum[210][210];
string s,a[10];
inline int read(){
int date=0,w=1;char c=0;
while(c<'0'||c>'9'){if(c=='-')w=-1;c=getchar();}
while(c>='0'&&c<='9'){date=date*10+c-'0';c=getchar();}
return date*w;
}
bool check(int l,int r){
string x=s.substr(l,r-l+1);
for(int i=1;i<=n;i++)if(x.find(a[i])==0)return true;
return false;
}
void init(){
string ch;
s+='0';
p=read();k=read();
for(int i=1;i<=p;i++){
cin>>ch;
s+=ch;
}
n=read();m=s.length()-1;
for(int i=1;i<=n;i++)cin>>a[i];
for(int i=m;i>=1;i--)
for(int j=i;j>=1;j--){
sum[j][i]=sum[j+1][i];
if(check(j,i))sum[j][i]++;
}
}
void work(){
dp[0][0]=0;
for(int i=1;i<=k;i++)dp[i][i]=dp[i-1][i-1]+sum[i][i];
for(int i=1;i<=m;i++)dp[i][1]=sum[1][i];
for(int i=1;i<=m;i++)
for(int j=1;j<=k&&j<i;j++)
for(int l=j;l<i;l++)
dp[i][j]=max(dp[i][j],dp[l][j-1]+sum[l+1][i]);
printf("%d\n",dp[m][k]);
}
int main(){
init();
work();
return 0;
}
```
by 15167987933yy @ 2023-07-31 14:45:47
@[15167987933yy](/user/934483) 我们两个代码好像没什么区别,那我wa在哪了?
by aldzsfs @ 2023-08-01 09:39:18
**呃,我不太知道**
by 15167987933yy @ 2023-08-01 21:02:44
15行加个break就AC了
```cpp
#include<bits/stdc++.h>
using namespace std;
int p,k,n,m,h[300][300],dp[300][300];
string s="0",c,word[10];
int main(){
cin>>p>>k;
while(p--) cin>>c,s+=c;
cin>>n;
m=s.size()-1;
for(int i=1;i<=n;++i) cin>>word[i];
for(int i=m;i;--i)
for(int j=i;j;--j){
h[j][i]=h[j+1][i];
string x=s.substr(j,i-j+1);
for(int o=1;o<=n;++o) if(!x.find(word[o])) { ++h[j][i];break;}
}
for(int i=1;i<=k;++i) dp[i][i]=dp[i-1][i-1]+h[i][i];
for(int i=1;i<=m;++i) dp[i][1]=h[1][i];
for(int i=1;i<=m;++i)
for(int j=1;j<=k&&j<i;++j)
for(int o=j;o<i;++o)
dp[i][j]=max(dp[i][j],dp[o][j-1]+h[o+1][i]);
return cout<<dp[m][k],0;
}
```
by zyzl @ 2023-11-09 20:18:35
@[15167987933yy](/user/934483)
你和题解第一个一摸一样,连变量名都一样???
by hzichen @ 2024-05-28 21:07:29