RT,除了第一篇 @寒鸽儿 的题解以外,其他所有的题解都是错误的。原因是没有判 不经过重复边或起点以外结点的环
中的重复经过非起点的结点
。
数据在这里。
针对上面的错误,我也写了校验包(仅限测试是否经过重复结点)如下
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
int n;
bool vis[100005];
int main(){
cin>>n;
for(int i=1,len;i<=n;i++){
cin>>len;
memset(vis,0,sizeof(vis));
for(int j=1,x;j<=len+1;j++){
cin>>x;
if(vis[x]&&j!=len+1) return i*10000000+j*10000+x;
vis[x]=1;
}
}
return 0;
}
若不和法则返回值不为 0。
另:应该 at 哪位管理员