Submission #1016276


Source Code Expand

#!/usr/bin/env python
# -*- coding: UTF-8 -*-

class UnionFind:
    def __init__(self, size):
        self.rank=[0]*size
        self.par =range(size)
        self.grp =size

    def find(self, x):
        if x==self.par[x]: return x

        self.par[x]=self.find(self.par[x])
        return self.par[x]

    def same(self, x, y): #2つの頂点が同じグループであるかを判定する
        return self.find(x)==self.find(y)

    def unite(self, x, y): #辺で接続されている2つの頂点を投げて統合する
        x,y=self.find(x),self.find(y)
        if x==y:
            return

        self.grp-=1
        if self.rank[x]<self.rank[y]:
            self.par[x]=y
        else:
            self.par[y]=x
            if self.rank[x]==self.rank[y]:
                self.rank[x]+=1

    def group_num(self):
        return self.grp


n,q=map(int,raw_input().split())
uf=UnionFind(n)

for i in range(q):
    p,a,b=map(int,raw_input().split())
    if p==0:
        uf.unite(a,b)
    else:
        print 'Yes' if uf.same(a,b) else 'No'

Submission Info

Submission Time
Task B - Union Find
User nyon
Language Python (2.7.3)
Score 100
Code Size 1098 Byte
Status AC
Exec Time 1026 ms
Memory 13612 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 100 / 100
Status
AC × 1
AC × 19
Set Name Test Cases
Sample 00_sample_01.txt
All 00_sample_01.txt, subtask_01_01.txt, subtask_01_02.txt, subtask_01_03.txt, subtask_01_04.txt, subtask_01_05.txt, subtask_01_06.txt, subtask_01_07.txt, subtask_01_08.txt, subtask_01_09.txt, subtask_01_10.txt, subtask_01_11.txt, subtask_01_12.txt, subtask_01_13.txt, subtask_01_14.txt, subtask_01_15.txt, subtask_01_16.txt, subtask_01_17.txt, subtask_01_18.txt
Case Name Status Exec Time Memory
00_sample_01.txt AC 39 ms 3384 KB
subtask_01_01.txt AC 593 ms 7592 KB
subtask_01_02.txt AC 43 ms 7340 KB
subtask_01_03.txt AC 929 ms 9640 KB
subtask_01_04.txt AC 966 ms 13608 KB
subtask_01_05.txt AC 101 ms 3760 KB
subtask_01_06.txt AC 108 ms 7720 KB
subtask_01_07.txt AC 926 ms 9644 KB
subtask_01_08.txt AC 978 ms 13604 KB
subtask_01_09.txt AC 37 ms 3332 KB
subtask_01_10.txt AC 43 ms 7336 KB
subtask_01_11.txt AC 904 ms 9640 KB
subtask_01_12.txt AC 972 ms 13612 KB
subtask_01_13.txt AC 753 ms 8488 KB
subtask_01_14.txt AC 47 ms 7340 KB
subtask_01_15.txt AC 943 ms 9640 KB
subtask_01_16.txt AC 953 ms 13608 KB
subtask_01_17.txt AC 1017 ms 13612 KB
subtask_01_18.txt AC 1026 ms 13612 KB