#include #include using namespace std; int N, M, P, a, b, db, con, maxi, need; vector el[100000]; vector f[100000]; vector uj; int apa[100000]; int h[100000]; bool ok[100000]; bool bent[100000]; int start[100000]; int hol(int x){ if(apa[x]<0) return x; return (apa[x] = hol(apa[x])); } void unio(int x, int y){ x = hol(x); y = hol(y); if(x==y) return; need++; if(apa[x]> N >> M >> P; for(int i=0; i> a >> b; el[a-1].push_back(b-1); el[b-1].push_back(a-1); } for(int i=0; i> db; for(int j=0; j> a; f[i].push_back(a-1); } } con = 370; int tart = 0; while(tart