TLE 80分求助!!!
  • 板块P1127 词链
  • 楼主李林恺
  • 当前回复13
  • 已保存回复13
  • 发布时间2020/4/8 09:11
  • 上次更新2023/10/28 21:12:47
查看原帖
TLE 80分求助!!!
261868
李林恺楼主2020/4/8 09:11
#include<bits/stdc++.h>
using namespace std;
int n,ans=0,f[1001]; 
string b[1001],k[1001];
vector <int> a[1001]; 
void s(int x,int z){
	if(z>n){
		for(int i=1;i<=n;i++){
			cout<<k[i];
			if(i!=n) cout<<'.';
		}
		exit(0);
	}
	for(int i=0;i<a[x].size();i++)if(!f[x]){
		f[x]=1;
		k[z]=b[x];
		s(a[x][i],z+1);
		f[x]=0;
	}
}
int main(){
	cin>>n;
	for(int i=1;i<=n;i++) cin>>b[i]; 
	sort(b+1,b+1+n);
	for(int i=1;i<=n;i++){
		for(int j=1;j<=n;j++){
			if(j!=i){
				if(b[i][b[i].size()-1]==b[j][0]) a[i].push_back(j);
			}
		}
	}
	for(int i=1;i<=n;i++) s(i,1);
	cout<<"***"<<endl;
	return 0;
}
2020/4/8 09:11
加载中...