搭積木
時間限制:C/C++語言 1000MS;其他語言 3000MS
內(nèi)存限制:C/C++語言 65536KB;其他語言 589824KB
題目描述:
一天,小明買了許多積木回家,他想把這些積木拼接在一起啊掏。每塊積木有兩個接口,每個接口我們用一個數(shù)字標記衰猛,規(guī)定只有當兩塊積木有相同數(shù)字標記的接口時迟蜜,這兩塊積木才可以通過該接口拼接在一起。舉例啡省,有兩塊積木娜睛,接口數(shù)字分別為1,2和3卦睹,4畦戒,那么這兩塊積木無法拼接;若兩塊積木接口數(shù)字分別為1结序,2和2障斋,3,那么這兩塊積木可以通過由數(shù)字2標記的接口拼接在一起徐鹤。
現(xiàn)在小明知道所有積木的數(shù)量和每塊積木接口的數(shù)字標記垃环,你能告訴他他可以將所有積木拼接成一個整體么?
輸入
第一行一個整數(shù)t返敬,表示測試數(shù)組組數(shù)1≤t≤10遂庄;
接下來在每組測試數(shù)據(jù)中:
第一行一個整數(shù)n,表示積木的數(shù)量1≤n≤100000救赐,
下面n行每行2個整數(shù)x涧团,y只磷,表示其中一塊積木的兩個接口的數(shù)字標記经磅;1≤x泌绣,y≤100000;
輸出
對于每組測試數(shù)據(jù)预厌,輸出”YES”阿迈,表示該組數(shù)據(jù)中的所有積木可以拼接成一個整體,”NO”表示不行轧叽。(注意輸出不包括引號)
樣例輸入
2
3
1 2
2 3
4 5
6
1 2
2 3
3 5
4 5
4 6
5 1
樣例輸出
NO
YES
Hint
在第一組測試數(shù)據(jù)中苗沧,有3塊積木,顯然前兩塊是可以拼接在一起的炭晒,但是第3塊無論如何也無法和前兩塊拼接待逞,所以輸出NO;第二組數(shù)據(jù)中我們可以這樣拼接:5-1-1-2-2-3-3-5-5-4-4-6网严,因此輸出YES识樱。