C++学习之路 | PTA(天梯赛)—— L2-024 部落 (25分)(带注释)(并查集)(精简)
L2-024 部落 (25分)
在一個(gè)社區(qū)里,每個(gè)人都有自己的小圈子,還可能同時(shí)屬于很多不同的朋友圈。我們認(rèn)為朋友的朋友都算在一個(gè)部落里,于是要請(qǐng)你統(tǒng)計(jì)一下,在一個(gè)給定社區(qū)中,到底有多少個(gè)互不相交的部落?并且檢查任意兩個(gè)人是否屬于同一個(gè)部落。
輸入格式:
輸入在第一行給出一個(gè)正整數(shù)N(≤10
?4
?? ),是已知小圈子的個(gè)數(shù)。隨后N行,每行按下列格式給出一個(gè)小圈子里的人:
K P[1] P[2] ? P[K]
其中K是小圈子里的人數(shù),P[i](i=1,?,K)是小圈子里每個(gè)人的編號(hào)。這里所有人的編號(hào)從1開(kāi)始連續(xù)編號(hào),最大編號(hào)不會(huì)超過(guò)10
?4
?? 。
之后一行給出一個(gè)非負(fù)整數(shù)Q(≤10
?4
?? ),是查詢次數(shù)。隨后Q行,每行給出一對(duì)被查詢的人的編號(hào)。
輸出格式:
首先在一行中輸出這個(gè)社區(qū)的總?cè)藬?shù)、以及互不相交的部落的個(gè)數(shù)。隨后對(duì)每一次查詢,如果他們屬于同一個(gè)部落,則在一行中輸出Y,否則輸出N。
輸入樣例:
4
3 10 1 2
2 3 4
4 1 5 7 8
3 9 6 4
2
10 5
3 7
輸出樣例:
10 2
Y
N
總結(jié)
以上是生活随笔為你收集整理的C++学习之路 | PTA(天梯赛)—— L2-024 部落 (25分)(带注释)(并查集)(精简)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: java元素符号是什么_Java 代码中
- 下一篇: s3c2440移植MQTT