#P1107. 重量之谜
显示设置
本题导航点一下展开
我的笔记
✕
重量之谜
题目背景
实验室的天平坏了,只剩下能比较左右轻重的托盘。师兄把 个砝码摆开,凭记忆写下 句话,每句都断言「第 个砝码恰好比第 个砝码重 克」。他说的话未必句句为真。你想知道:这些断言能不能同时成立;如果能,最少还需要真正称出几个砝码的重量,才能把全部 个砝码的重量都算出来。
题目描述
给定 个砝码与 条断言,第 条断言为 ,其中 表示第 个砝码的重量。若这 条断言不能同时成立,输出 ;否则输出一个整数,表示最少需要事先精确称出的砝码个数,使得其余砝码的重量都能由这些断言唯一确定。
输入格式
第一行两个整数 。
接下来 行,每行三个整数 。
输出格式
若断言互相矛盾,输出一行 -1;否则输出一行一个整数,表示最少需要事先精确称出的砝码个数。
输入输出样例 #1
输入 #1
3 2
1 2 5
2 3 3
输出 #1
1
输入输出样例 #2
输入 #2
2 0
输出 #2
2
输入输出样例 #3
输入 #3
3 3
1 2 1
2 3 1
1 3 5
输出 #3
-1
说明
样例解释
样例 1:由前两条断言可知 、,只要称出 ,另外两个重量就都确定了,故答案为 。
样例 2:没有任何断言,每个砝码的重量都必须单独称出来,故答案为 。
样例 3:前两条断言推出 ,与第三条断言 矛盾,故输出 。
数据范围
- 对于 的数据,;
- 对于 的数据,;
- 对于 的数据,,,。允许多条断言描述同一对砝码,也允许 。