编程题
### 问题描述 小 $Q$ 有 $n$ 个珍珠,编号为 $1...n$,有些是蓝色的,有些是红色的。小 $L$ 想知道每个珍珠是什么颜色的。小 $L$ 会问 $m$ 个问题,每个问题形如:编号为 $x$ 的珍珠和编号为 $y$ 的珍珠是否同色。 小 $Q$ 会回答是或者否。现在小 $L$ 想知道小 $Q$ 是否一定说了谎,如果不一定,小 $L$ 还希望知道可行的珍珠颜色的方案数。 ### 输入格式 第一行有三个正整数 $n, m, tp$,分别表示珍珠个数,询问次数和问题类型。 接下来 $m$ 行,每行三个数 $x_i, y_i, w_i$,表示小 $L$ 问了“编号为 $x$ 的珍珠和编号为 $y$ 的珍珠是否同色”这个问题,小 $Q$ 的回答为 $w_i$($0$ 为否,$1$ 为是)。 ### 输出格式 若 $tp=1$,那么如果存在一组合法的方案,输出 $YES$ ,否则输出 $NO$ 。 若 $tp=2$,输出一行一个数 $x$,表示合法的珍珠颜色的方案数,答案对 $998244353$ 取模。 ##### 输入样例 ``` 3 2 2 1 2 0 2 3 0 ``` ### 输出样例 ``` 2 ``` ### 数据范围 对于 $100$% 的数据,满足 $1 \leq n \leq 300000,1 \leq m \leq 300000,1 \leq tp \leq 2$。
查看答案
赣ICP备20007335号-2