。。。又是一A。。。
考试的时候刚开始写的思路就是对的,不过可能是用的方法不好,导致一个三分的测试点不通过
我还以为简单回路概念搞错了,因为最后一题就算丢了就把所有时间都和这三分较真了,改了又改。。。
所以考试的时候一定不能紧张!!!一定要多想一会,不着急下笔。。。不对。。。是下手
所以前三题都是简单题。。。没有坑点的简单题,不用套模版的简单题!!!
对了考试的时候NO中字母写成了零。。。死活找不出来错误。。。。这种低级错误,不想多说。。。
#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
const int MAX = 210;
int n , m , q;
int mp[MAX][MAX]={0};
int visited[MAX];
vector<int> path;
int main(){
cin>>n;
cin>>m;
for(int i=0;i<m;i++){
int a , b;
scanf("%d%d",&a,&b);
mp[a][b]=mp[b][a]=1;
}
cin>>q;
for(int j=0;j<q;j++){
int flag=1;
fill(visited,visited+MAX,0);
path.clear();
int num;
scanf("%d",&num);
for(int i=0;i<num;i++){
int tempv;
scanf("%d",&tempv);
path.push_back(tempv);
}
if(*path.begin()!=*(path.end()-1)||num-1!=n) flag=0;
else{
for(int i=0;i<num-1;i++){
if(visited[path[i]]==0&&mp[path[i]][path[i+1]]==1){
visited[path[i]]=1;
}
else{
flag=0;break;
}
}
}
if(flag==0){
printf("NO\n");
}
else{
printf("YES\n");
}
}
return 0;
}