python

classUF:
    def __init__(self, N):
        self.id = list(range(N))
        self.sz = list(1 fori in range(N))
        self.count = N
    def GetCount(self):
        returnself.count
    def find(self,p):
        whilep!=self.id[p]:
            self.id[p] = self.id[self.id[p]]
            p = self.id[p]
        returnp
    def union(self,p,q):
        i = self.find(p)
        j = self.find(q)
        ifi==j:
            return
        else:
            ifself.sz[i]<self.sz[j]:
                self.id[i] = j
                self.sz[j]+=self.id[i]
            else:
                self.id[j] = i
                self.sz[i]+=self.id[j]
        self.count-=1
     
pairs = int(input())
row = [int(i) fori in input().split()]
uf = UF(pairs)
fori in range(0,pairs):
    m = row[2*i]
    n = row[2*i+1]
    uf.union(int(m/2),int(n/2))
print(pairs-uf.GetCount())
全部评论

相关推荐

小鹏、大疆、米哈游、MinMax小鹏上午投的下午就约面,进度未免也太快了
蛇年行大运fff:哥们 盗贴有意思吗,我发xhs上的给你搬过来了😅😅😅
点赞 评论 收藏
分享
湫湫湫不会java:先投着吧,大概率找不到实习,没实习的时候再加个项目,然后把个人评价和荣誉奖项删了,赶紧成为八股战神吧,没实习没学历,秋招机会估计不多,把握机会。或者说秋招时间去冲实习,春招冲offer,但是压力会比较大
点赞 评论 收藏
分享
07-02 10:39
门头沟学院 Java
Steven267:说点真实的,都要秋招了,还没有实习,早干嘛去了,本来学历就差,现在知道急了,而且你这个简历完全可以写成一页,劣势太大了,建议转测试
点赞 评论 收藏
分享
07-17 12:07
门头沟学院 Java
勇敢牛牛不怕困难
投递OPPO等公司8个岗位
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务