蒟蒻求大佬点拨一下怎么办,超时得太离谱了!!!
查看原帖
蒟蒻求大佬点拨一下怎么办,超时得太离谱了!!!
254967
ZYCてうし楼主2021/5/18 22:05

TLE代码如下

#include<iostream>
#include<cstdio>
#include<cmath>
#include<cstring>
#include<algorithm>
using namespace std;
char qwq[111][111],s;
int js[111],n,t=0,m=0,l[111],n2,c;
void zyc(int x,int y)
{
	if(t>m) m=t;
	for(int i=1;i<=n2;i++)
	{
		if(x==1)
		{
			if(qwq[i][0]!=s) continue;
			l[i]=1;t+=js[i];
			zyc(x+1,i);
			l[i]=0;t-=js[i];
		}
		if(l[i]==1) continue;
		int cao=1,kao=js[y]-1;
		char a[1200]={'\0'},b[1200]={'\0'};
		while(cao<=js[i]&&cao<js[y]);
		{
			strncpy(a,qwq[i],cao);
		    strncpy(b,&qwq[y][kao--],cao);
		    if(strcmp(a,b)==0)
			{
		    	t+=js[i]-cao;
		    	l[i]=1;
		    	zyc(x+1,i);
		    	t-=js[i]-cao;
		    	l[i]=0;
		    	break;
			}
			cao++;
		}
		
	}
}
int main ()
{
	cin>>n;
	n2=2*n;
	for(int i=1;i<=n;i++)
	{
		cin>>qwq[i];
		js[i]=strlen(qwq[i]);
	}
	for(int i=n+1;i<=n2;i++)
	{
		strcpy(qwq[i],qwq[i-n]);
		js[i]=js[i-n];
	}
	cin>>s;
	zyc(1,0);
	cout<<m;
	return 0;
}
```cpp
感谢各位
2021/5/18 22:05
加载中...