为什么4和5WA
查看原帖
为什么4和5WA
568616
priority_M楼主2025/1/22 22:46
include "bits/stdc++.h"

using namespace std;

int n,a[20],ans;
string s[20];
bool f[20];

void dfs(int x,int cnt){
  cnt = cnt + s[x].size();
	if(cnt < a[x]){
		cnt = cnt - s[x].size();
		return;
	} else {
		a[x] = cnt;
		f[x] = true;
	}
	for(int i = 1;i <= n;i ++){
		if(f[i] == true){
			continue;
		} else if(s[x][s[x].size() - 1] == s[i][0]){
			dfs(i,cnt);
		}
	}
	f[x] = false;
	cnt = cnt - s[x].size();
}

int main(){
	cin >> n;
	for(int i = 1;i <= n;i ++){
		cin >> s[i];
	}
	for(int i = 1;i <= n;i ++){
		dfs(i,0);
	}
	for(int i = 1;i <= n;i ++){
		ans = max(ans,a[i]);
	}
	cout << ans << endl;
	return 0;
}
2025/1/22 22:46
加载中...