#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; typedef long long int llint; typedef long double lldo; #define mp make_pair #define mt make_tuple #define pub push_back #define puf push_front #define pob pop_back #define pof pop_front #define fir first #define sec second #define res resize #define ins insert #define era erase #define dme cout<<-1<void mineq(T& a,U b){if(a>b){a=b;}} template void maxeq(T& a,U b){if(a>n>>m; vector>go(n); int t; for(i=0;i>a>>b; go[a].pub(b); go[b].pub(a);t=a; } queueque;//連結 que.push(t);//適当 vectorcan(n); while(!que.empty()){ int ter=que.front(); que.pop(); if(can[ter]){continue;} can[ter]=true; for(auto it:go[ter]){que.push(it);} } int ki=0; for(i=0;i0&&(!can[i])){cout<<"NO"<