#N0240. 找到百草枯【NOIP2023模拟赛T1】
找到百草枯【NOIP2023模拟赛T1】
题目描述
小明有瓶水,其中一瓶水当中不小心被坏蛋替换成了百草枯(喝了一滴就会挂的药)。
为了找到那一个被替换成百草枯的瓶子,小明做了次实验。
第次实验,小明选了了个瓶子,然后把第个瓶子的药水各混了一些,给一只健康的小白鼠喝下,然后观察小白鼠,得到小白鼠死亡
或者是没死
两个结果。
现在,小明把这次实验的结果记录了下来,问:
小明能否通过这次实验确定哪一瓶是百草枯,如果能,输出最早在第几次实验后就能确定,以及那一瓶百草枯是几号瓶子;如果不能,按编号从小到大的顺序输出哪些瓶子里面可能是百草枯。
输入格式
第一行两个正整数。
接下来行,每一行第一个数字表示,接下来个数字,表示本次实验的药水编号,最后跟一个数字或者,表示这只小白鼠没死,表示这只小白鼠死了。
输出格式
如果可以确定,输出Yes
,然后在下一行输出答案。
如果不能确定,输出No
,然后在下一行输出答案。
样例输入1
3 3
2 1 2 1
1 2 0
1 1 1
样例输出1
Yes
2 1
样例输入2
4 3
1 1 0
2 1 3 0
1 3 0
样例输出2
No
2 4
样例输入3
4 3
1 1 0
1 2 0
1 3 0
样例输出3
Yes
3 4
数据范围
对于30%的数据:。
对于另15%的数据:每次实验的结果一定都是。
对于另15%的数据:每次实验的结果一定都是。
对于另15%的数据:。
对于100%的数据:$2\leq n \leq 5\times 10^5,1\leq m \leq 5\times 10^5,1\leq k_i \leq n,m\leq \sum k_i \leq 10^6$。保证每次实验涉及到的小白鼠编号递增。