首页 > 其他分享 >给定一个字符串a 排成b 每次只能从原来的位置移动到队头 求操作多少次

给定一个字符串a 排成b 每次只能从原来的位置移动到队头 求操作多少次

时间:2022-08-27 11:24:58浏览次数:95  
标签:排成 int s2 s1 队头 给定 ans 移动

累加匹配的后缀 因为只能往队头移动 后缀相同就是不用移动的位置

#include<bits/stdc++.h>
#define ll long long
using namespace std;

int n;
string s1,s2;

int main(){
    cin>>n;
    cin>>s1>>s2;
    s1="#"+s1;
    s2="#"+s2;
    int m=n,ans=0;
    for(int i=n;i>=1;i--){
        if(s1[i]==s2[m]){//串1 匹配到 串2 串2的匹配就往前走
            ans++;
            m--;
        }
    }
    cout<<n-ans;
    return 0;
}

标签:排成,int,s2,s1,队头,给定,ans,移动
From: https://www.cnblogs.com/liang302/p/16630014.html

相关文章