为什么会wa20分啊

P1278 单词游戏

``` #include<bits/stdc++.h> using namespace std; char a[30][110]; int k[10001],n,vis[10001]; int dfs(int i){ if(k[i]) return k[i]; int len=strlen(a[i]),ans=0; for(int j=1;j<=n;j++){ if(j!=i&&a[j][0]==a[i][len-1]&&vis[j]==0){ vis[j]=1; ans=max(ans,dfs(j)); vis[j]=0; } } k[i]=ans+len; return k[i]; } int main(){ memset(vis,0,sizeof(vis)); memset(k,0,sizeof(k)); cin>>n; for(int i=1;i<=n;i++){ cin>>a[i]; } int ans=0; for(int i=1;i<=n;i++){ vis[i]=1; ans=max(ans,dfs(i)); vis[i]=0; } cout<<ans<<endl; return 0; }
by cinbingg @ 2020-08-04 08:16:10


一样 我也错了两个点
by cinbingg @ 2020-08-04 08:16:30


|