题目描述
思路
最长连续多少个
直接用双指针,i指着主串,j指着子串,如果子串和主串对于相等,那都往后++,如果不相等,主串++,知道主串遍历完,子串j的位置就是最长的
代码
洛谷题解大佬的,代码写的太优雅了!!比我写的那堆破烂好多了
#include<bits/stdc++.h>
using namespace std;
int ans;
string s,t;
signed main()
{cin>>s>>t;for(int i=0,j=0;i<s.size()and j<t.size();i++)if(s[i]==t[j])j++,ans++;printf("%d",ans);return 0;}
总结
看能不能想出来双指针了
因为要求的是从第一个字符开始的最长子串