1 #include<cstdio> 2 #include<iostream> 3 #include<algorithm> 4 #include<bits/stdc++.h> 5 using namespace std; 6 const int n=3000; 7 int N,D; 8 char a[n]; 9 int f[n]; 10 int a1,a2; 11 12 13 int main(){ 14 scanf("%d%d",&N,&D); 15 //memset(f,0x3fffff,sizeof(f)); 16 for(int i=1;i<=N;i++){ 17 scanf(" %c",&a[i]);//在这里一定要注意前面有空格,我当时就错了,搞了半天还是对博客看出来的!!! 18 f[i]=0x7fffff; 19 } 20 f[0]=0; 21 for(int i=1;i<=N;i++){ 22 for(int j=i;j>=1;j--){ 23 if(a[j]=='H')a1++; 24 if(a[j]=='J')a2++; 25 if(a1==0||a2==0||abs(a1-a2)<=D){ 26 f[i]=min(f[i],f[j-1]+1); 27 } 28 29 } 30 a1=0;a2=0; 31 } 32 printf("%d ",f[N]); 33 return 0; 34 }