题解 AT2162 【Prefix and Suffix】

· · 题解

暴力法也能过

#include<bits/stdc++.h>
using namespace std;
string a,b;
long long n,ans,k;
long long ds(int uke)//判断
{
    int now=0;
    for(int s=uke;s<n;s++)
    {
        if(a[s]!=b[now])break;
        now++;
    }
    return now;
}
int main()
{
    //思路:abc bcd
    //进行判断abc中的abc是否在bcd前面
    //判断abc中的bc是否在bcd前面
    //判断abc中的c是否在bcd前面
    //输出减去最小的
    cin>>n>>a>>b;
    ans=n*2;
    for(int s=0;s<n;s++)
    {
        k=ds(s);
        ans=min(ans,n*2-k);
    }
    cout<<ans<<endl;
    return 0;
}