#P10777. BZOJ3706 反色刷

BZOJ3706 反色刷

题目描述

给定 nn 个点,mm 条边的无向图,边有黑白两种颜色。现在你可以进行若干次回路反色操作,每次操作从任意点出发,每经过一条边,将其颜色反转,最后回到起点。判断能否通过若干次操作,使这张图所有边都变成白色。

因为某种原因,边的颜色是会改变的,即你相当于需要支持以下两种操作:

  • 1 x 将第 xx 条边反色(边的编号为 0m10\sim m-1);
  • 2 求出最少操作次数;

输入格式

第一行两个整数 n,mn,m 表示这张图有 nn 个点 mm 条边。

接下来 mm 行,每行 33 个整数 u,v,cu,v,c 表示一条无向边和这条边的颜色,其中 00 为白色,11 为黑色。

接下来一个整数 qq,表示有 qq 个操作。接下来 qq 行操作,描述如上。

输出格式

对于每个询问,输出一行一个整数,表示最少需要的反色操作次数。如果没有合法方案输出 1-1

6 6
1 2 1
2 3 1
1 3 1
4 5 1
5 6 1
4 6 1
14
2
1 0
2
1 1
1 2
2
1 3
1 4
1 5
2
1 3
1 4
1 5
2
2
-1
1
0
1

提示

数据保证,1n,m,q10000001\leq n,m,q \leq 1000000c<2c < 2,没有重边自环。