AT_abc126_e [ABC126E] 1 or 2
题目描述
有 $N$ 张卡片按顺序面朝下排列,每张卡片上写有整数 $1$ 或 $2$。
第 $i$ 张卡片上写的整数记为 $A_i$。
你的目标是猜出 $A_1, A_2, \ldots, A_N$ 的值。
你已知以下信息:
- 对于 $i = 1, 2, \ldots, M$,有 $A_{X_i} + A_{Y_i} + Z_i$ 是偶数。
你是一名魔法师,可以无限次使用以下魔法。
**魔法**:支付 $1$ 的代价,选择一张卡片,得知该卡片上的整数 $A_i$。
你最少需要支付多少代价,才能确保猜出所有 $A_1, A_2, \ldots, A_N$ 的值?
保证输入数据没有矛盾(即一定存在满足条件的 $A_1, A_2, \ldots, A_N$)。
输入格式
输入按以下格式从标准输入读入。
> $N$ $M$
> $X_1$ $Y_1$ $Z_1$
> $X_2$ $Y_2$ $Z_2$
> $\vdots$
> $X_M$ $Y_M$ $Z_M$
输出格式
输出为了确保猜出所有 $A_1, A_2, \ldots, A_N$ 所需支付的最小总代价。
说明/提示
## 限制条件
- 所有输入均为整数。
- $2 \leq N \leq 10^5$
- $1 \leq M \leq 10^5$
- $1 \leq X_i < Y_i \leq N$
- $1 \leq Z_i \leq 100$
- $(X_i, Y_i)$ 的组合互不相同。
- 输入保证无矛盾(即存在满足条件的 $A_1, A_2, \ldots, A_N$)。
## 样例解释 1
对第 $1$ 张和第 $3$ 张卡片各使用一次魔法,就可以确定 $A_1, A_2, A_3$ 的所有值。
由 ChatGPT 4.1 翻译