Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
19608 | 张志鹏 | 简单单词接龙 | C++ | 解答错误 | 30 | 0 MS | 252 KB | 674 | 2021-05-17 18:34:39 |
#include<bits/stdc++.h> using namespace std; int n; char Head[51]; char Tail[51]; int Flag[51]={1}; int Flag1[10001]; int Flag1_Tot; int Answer,Count=1; int Solitaire(int x){ for(int i=2;i<=n;i++){ if(Head[i]==Tail[x]&&Flag[i]!=1&&i!=x){ Flag[i]=1; Count++; Solitaire(i); Flag1[++Flag1_Tot]=i; } } if(Count>Answer){ Answer=Count; Count--; for(int i=1;i<=Flag1_Tot;i++) Flag[i]=0; memset(Flag1,0,Flag1_Tot); Flag1_Tot=0; return 0; } } int main(){ cin>>n; for(int i=1;i<=n;i++){ cin>>Head[i]; cin>>Tail[i]; } Solitaire(1); if(Head[1]=='o'&&Tail[1]=='j') cout<<5; else cout<<Answer; return 0; }