YbtOJ 字符串处理课堂过关 例4 字符串环【字符串】

题目

在这里插入图片描述

思路

这道题就把两个字符串都复制一遍然后 O ( n 2 ) O(n^2) O(n2)
当然,还需要不断查找和维护最大值,所以总时间复杂度是大于 O ( n 2 ) O(n^2) O(n2) 的。

代码

#include<iostream>
#include<cstring>
#include<string>
#include<cstdio>
#include<cmath>
using namespace std;
string ss,s,ans_str;
int ans; 
int main()
{
    
    
	cin>>s>>ss;
	s=s+s,ss=ss+ss;
	for(int i=0; i<=s.size()-1; i++)
	 for(int j=0; j<=ss.size()-1; j++)
	  {
    
    
	  	if(s[i]==ss[j])
	  	 {
    
    
	  	 	int k=i,w=j;
	  	 	while(s[k]==ss[w]&&k<s.size()&&w<ss.size())
	  	 	  k++,w++;
	  	 	if(k-i>ans)
	  	 	  ans=k-i;
		 }
	  }
	cout<<ans;
	return 0; 
}
/*ABCEFAGADEGKABUVKLM MADJKLUVKL*/

猜你喜欢

转载自blog.csdn.net/Jackma_mayichao/article/details/112989010