样例都没过!急急急
查看原帖
样例都没过!急急急
866969
telankesi楼主2022/12/28 18:27
#include <stdio.h>
#include <string.h>
char w[23][20];
int n;
int f[23];//用于标记用了几次
char last;
int num = 1;
int max = 0;
void fun() {
	int flag = 0;
	for (int i = 1; i <= n; i++) {
		if (w[i][0] == last&&f[i]<2) {
			num += strlen(w[i]) - 1;
			f[i]++;
			char t = last;//记录最后一个字母
			last = w[i][strlen(w[i]) - 1];
			fun();
			f[i]--;
			last = t;
			num =num- strlen(w[i]) + 1;
			flag = 1;
		}
	}
	if (flag == 0) {
		if (num > max) { max = num; }
	}

}
int main(){
	scanf("%d", &n);
	for (int i = 1; i <= n; i++) {
		scanf("%s", w[i]);
	}

	scanf(" %c", &last);
	
	fun();
	printf("%d", max);
	return 0;

}
2022/12/28 18:27
加载中...