문제 출처: https://www.acmipc.net/problem/2606
func find(comNum: Int, networkNum: Int, pairs: [[Int]]) {
// [[1, 2], [2, 3] … ]
var net = [[Int]]()
var intSet = Set<Int>()
for i in 0..<pairs.count {
if pairs[i].contains(1) == true {
net.append(pairs[i])
} else {
}
}
// [[1, 3], [1, 5]]
for i in 0..<pairs.count {
if pairs[i][0] != 1 {
intSet.insert(pairs[i][0])
}
if pairs[i][1] != 1 {
intSet.insert(pairs[i][1])
}
}
// {1, 3, 5}
for i in 0..<pairs.count {
for j in 0..< intSet.count {
if net[i].contains(intSet[j]) == true {
intSet.insert(pairs[i][0])
intSet.insert(pairs[i][1])
}
}
}
return intSet.count - 2
}