lanqiao oj 1203 小明的字符串

简介: lanqiao oj 1203 小明的字符串

用户登录

#include<iostream>
#include<algorithm>
#include<cstring>
 
using namespace std ;
const int N = 1e6 +10 ;
char p[N] , s[N] ;
int n , m ;
int ne[N] ;
int main(){
  cin >> s + 1 >> p + 1 ;
  n = strlen(s+1) ;
  m = strlen(p+1) ;
  for(int i = 2 ,j = 0 ; i <= m; i ++){
    while(j && p[i] != p[j+1]) j = ne[j] ;
    if(p[i] == p[j+1]) j ++ ;
    ne[i] = j ;
  }
  int ans = 0 ;
  for(int i = 1 , j = 0; i <= n ; i ++){
    while(j && s[i]!=p[j+1]) j = ne[j] ;
    if(s[i] == p[j+1]) j ++ ;
    ans = max(ans , j) ;
    if(j == m){
      ans = m ; break ;
    } 
  }
  cout << ans << endl ;
}
目录
相关文章
|
1月前
lanqiao OJ 1388 寒假作业
lanqiao OJ 1388 寒假作业
33 0
|
1月前
lanqiao OJ 649 算式900
lanqiao OJ 649 算式900
15 1
|
1月前
lanqiao OJ 389 摆花
lanqiao OJ 389 摆花
15 2
|
1月前
lanqiao OJ 99 分巧克力
lanqiao OJ 99 分巧克力
12 1
|
1月前
lanqiao oj 小明的宠物袋
lanqiao oj 小明的宠物袋
12 0
|
1月前
lanqiao oj 185 修改数组
lanqiao oj 185 修改数组
16 0
|
1月前
lanqiao oj Frog
lanqiao oj Frog
21 0
|
1月前
lanqiao OJ 98 包子凑数
lanqiao OJ 98 包子凑数
9 0
|
1月前
lanqiao oj 1085 小猪存钱罐
lanqiao oj 1085 小猪存钱罐
26 0
|
1月前
lanqiao oj 1050 补给
lanqiao oj 1050 补给
37 0