代码!!!
#include<cstdio>
#include<vector>
#include<cstring>
using namespace std;
const int maxn = 100001;
int kase[maxn], N, M;
vector<int> G[maxn];
bool vis[maxn];
void init(void){
for(int i = 1; i <= N; i++) G[i].clear();
memset(kase, -1, sizeof(kase));
}
void chg(int idx){
vis[idx] = true;
for(int i = 0; i < G[idx].size(); i++) if(!vis[G[idx][i]]) chg(G[idx][i]);
kase[idx] = !kase[idx];
}
void fill(int idx, in