Submission #473860


Source Code Expand

#!/usr/bin/env python
# -*- coding: UTF-8 -*-
#roitiさんをまるまるパクリ
import time
import sys
import io
import re
import math
import itertools
import collections
#sys.stdin=file('input.txt')
#sys.stdout=file('output.txt','w')
#10**9+7
mod=1000000007
#mod=1777777777
pi=3.141592653589
xy=[(1,0),(-1,0),(0,1),(0,-1)]
bs=[(-1,-1),(-1,1),(1,1),(1,-1)]
#start = time.clock()
class UnionFind:
    def __init__(self, size):
        self.rank=[0]*size
        self.par=range(size)
        self.g_num=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):
    #xとが同じ集合に属するか否か
        return self.find(x)==self.find(y)

    def unite(self, x, y):
    #xとyの属する集合を併合
        x,y=self.find(x),self.find(y)
        if x==y:
            return

        self.g_num-=1
        if self.rank[x]>self.rank[y]:
            self.par[y]=x
        else:
            self.par[x]=y
            if self.rank[x]==self.rank[y]:
                self.rank[y]+=1

    def group_num(self):
        return self.g_num


N,Q=map(int,raw_input().split())
uf=UnionFind(N)

for loop in xrange(N):
    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 0
Code Size 1490 Byte
Status WA
Exec Time 898 ms
Memory 12828 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 0 / 100
Status
WA × 1
WA × 15
RE × 4
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 WA 74 ms 4108 KB
subtask_01_01.txt WA 143 ms 4424 KB
subtask_01_02.txt RE 157 ms 12828 KB
subtask_01_03.txt WA 69 ms 4112 KB
subtask_01_04.txt WA 820 ms 8076 KB
subtask_01_05.txt WA 68 ms 4112 KB
subtask_01_06.txt RE 261 ms 12828 KB
subtask_01_07.txt WA 70 ms 4108 KB
subtask_01_08.txt WA 826 ms 8076 KB
subtask_01_09.txt WA 68 ms 4108 KB
subtask_01_10.txt RE 156 ms 12812 KB
subtask_01_11.txt WA 69 ms 4108 KB
subtask_01_12.txt WA 840 ms 8076 KB
subtask_01_13.txt WA 94 ms 4236 KB
subtask_01_14.txt RE 159 ms 12828 KB
subtask_01_15.txt WA 70 ms 4108 KB
subtask_01_16.txt WA 873 ms 8072 KB
subtask_01_17.txt WA 895 ms 8076 KB
subtask_01_18.txt WA 898 ms 8000 KB