1 条题解
-
0
思路
计数组数和每行两个字符串,长度≤1000,区别已有单组两行版本。
参考程序(C++11)
#include <bits/stdc++.h> using namespace std; int main(){int t;cin>>t;while(t--){string a,b;cin>>a>>b;vector<int>p(b.size()+1),q(b.size()+1);iota(p.begin(),p.end(),0);for(int i=1;i<=(int)a.size();i++){q[0]=i;for(int j=1;j<=(int)b.size();j++)q[j]=min({p[j]+1,q[j-1]+1,p[j-1]+(a[i-1]!=b[j-1])});swap(p,q);}cout<<p[b.size()]<<'\n';}}
- 1