1 条题解

  • 0
    @ 2026-10-25 16:05:38

    思路

    二维前缀转移,区分子串与子序列,含空串及千字符规模。

    参考程序(C++11)

    #include <bits/stdc++.h>
    using namespace std;
    int main(){string a,b;getline(cin,a);getline(cin,b);if(!a.empty()&&a.back()=='\r')a.pop_back();if(!b.empty()&&b.back()=='\r')b.pop_back();vector<int>p(b.size()+1),q(b.size()+1);for(char x:a){for(int j=1;j<=(int)b.size();j++)q[j]=x==b[j-1]?p[j-1]+1:max(p[j],q[j-1]);swap(p,q);}cout<<p[b.size()]<<'\n';}
    
    • 1

    信息

    ID
    1152
    时间
    1000ms
    内存
    64MiB
    难度
    普及
    标签
    递交数
    3
    已通过
    2
    上传者