A5(用状态机模型解决字符串问题

A5(用状态机模型解决字符串问题_第1张图片
A5(用状态机模型解决字符串问题_第2张图片
明明状态2是可以由状态4转移过来的(也就是说AAA5再遇到5的时候会变成AAA55,此时不得不转移这个非法状态了,那么如果改5为A的话,就会回到状态4,如果随便改一个A为5的话,就会回到状态2(AA555),可是为什么我加入这个状态2的转移入口的时候反而错了呢?!奇怪了奇怪了。

#include 
#include 
#include 
using namespace std;
string s;
int t,n;
int dp[1000][5];
int minn(int a,int b,int c){
    return min(a, min(b,c));
}
int main(){
    cin>>t;
    while(t--){
        memset(dp,0x3f,sizeof dp);
        cin>>s;
        n=s.length();
        //cout<<"n="<

上面是加注释版的代码
下面是删减版代码(就是想看看code能短到什么长度hhh

#include 
using namespace std;
string s;
int t,n;
int dp[1000][5];
int main(){
    cin>>t;
    while(t--){
        memset(dp,0x3f,sizeof dp);
        cin>>s;
        n=s.length();
        for(int i=1;i<=4;i++)dp[0][i]=0;
        if(s[0]=='A')dp[0][0]=1;
        else dp[0][0]=0;
        for(int i=1;i

你可能感兴趣的:(笔记,动态规划)