剪刀石頭布
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 0 Accepted Submission(s): 0
Problem Description
現有M個人一起玩剪刀石頭布,以1-M編號,每人出一種,出過不再改變,但是我們並不知道它到底是哪一種。 (其中石頭贏剪刀,剪刀贏布,布贏石頭,一樣則平)
裁判用兩種說法對這M個人所構成的輸贏關係進行描述:
一:"1 A B",表示第A個人和第B個人出的一樣。
二:"2 A B",表示第A個人贏第B個人。
裁判對M個人,用以上兩種說法,連說N句話,其中有真的、也有假的。
一句話出現以下情況,就是假話,否則就是真話。
1) 該句話與之前的某些真話衝突;
2) 該句話中A或B比M大;
3) 該句話表示A贏A。
請根據給定的M和N,輸出假話數。
其中(1 <= M <= 10,000),(0 <= N <= 10,000)
Input
第1行是一個自然數K,代表有K組數據。
每組數據以一個空行分隔,其中每組數據的第1行是兩個自然數M、N,以空格分開。
每組數據的第2行至N+1行,每行是三個自然數X,A,B,三個數之間用空格分開,X(1或2)表示說法的種類。
Output
Sample Input
3
43 11
1 4 3
2 3 3
1 4 1
1 4 4
2 3 3
1 2 2
2 1 4
1 1 1
2 1 4
2 3 4
2 3 2
66 9
2 3 1
2 4 4
2 1 2
2 4 3
2 4 2
2 2 3
1 3 2
1 2 1
1 1 1
6 7
2 3 7
2 1 2
2 4 4
1 2 1
1 3 2
1 2 3
2 1 3
Sample Output
【本文出自:http://blog.csdn.net/twlkyao/article/details/23474155】
這道題屬於並查集,還不是很會,可以參考點擊打開鏈接,後續自己的代碼會貼上來。