Submission #5627301
Source Code Expand
import sys
input = sys.stdin.readline
class UnionFindTree():
def __init__(self, size):
"""
Initializes `size` trees.
size: size of union find tree
"""
# initialize the map with n -> n
self.__parent_map = range(size)
def get_root(self, x):
"""
Returns the root of tree which contains such given element.
x: number of node
"""
parent = self.__parent_map[x]
if parent == x:
return x
else:
root = self.get_root(parent)
# shortens the finding path
self.__parent_map[x] = root
return root
def unite(self, x, y):
"""
combine two trees into one tree.
"""
root_x = self.get_root(x)
root_y = self.get_root(y)
# if x and y don't have the same root, combine then into one tree
if root_x != root_y:
self.__parent_map[x] = root_y
def is_same(self, x, y):
"""
Check the identity of given two tree.
"""
root_x = self.get_root(x)
root_y = self.get_root(y)
return root_x == root_y
def main():
n, q = map(int, input().split())
tree = UnionFindTree(n)
for _ in range(q):
p, a, b = map(int, input().split())
if p == 0:
tree.unite(a - 1, b - 1)
else:
print('Yes' if tree.is_same(a - 1, b - 1) else 'No')
if __name__ == '__main__':
main()
Submission Info
| Submission Time | |
|---|---|
| Task | A - 深さ優先探索 |
| User | ibara1454 |
| Language | Python (2.7.6) |
| Score | 0 |
| Code Size | 1536 Byte |
| Status | RE |
| Exec Time | 11 ms |
| Memory | 2696 KiB |
Judge Result
| Set Name | Sample | All | ||||
|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 0 / 100 | ||||
| Status |
|
|
| Set Name | Test Cases |
|---|---|
| Sample | 00_sample_01.txt, 00_sample_02.txt, 00_sample_03.txt, 00_sample_04.txt, 00_sample_05.txt |
| All | 00_min_01.txt, 00_min_02.txt, 00_min_03.txt, 00_min_04.txt, 00_min_05.txt, 00_min_06.txt, 00_min_07.txt, 00_min_08.txt, 00_sample_01.txt, 00_sample_02.txt, 00_sample_03.txt, 00_sample_04.txt, 00_sample_05.txt, 01_rnd_00.txt, 01_rnd_01.txt, 01_rnd_02.txt, 01_rnd_03.txt, 01_rnd_04.txt, 01_rnd_05.txt, 01_rnd_06.txt, 01_rnd_07.txt, 01_rnd_08.txt, 01_rnd_09.txt, 01_rnd_10.txt, 01_rnd_11.txt, 01_rnd_12.txt, 01_rnd_13.txt, 01_rnd_14.txt, 01_rnd_15.txt, 01_rnd_16.txt, 01_rnd_17.txt, 01_rnd_18.txt, 01_rnd_19.txt, 02_rndhard_00.txt, 02_rndhard_01.txt, 02_rndhard_02.txt, 02_rndhard_03.txt, 02_rndhard_04.txt, 02_rndhard_05.txt, 02_rndhard_06.txt, 02_rndhard_07.txt, 02_rndhard_08.txt, 02_rndhard_09.txt, 02_rndhard_10.txt, 02_rndhard_11.txt, 02_rndhard_12.txt, 02_rndhard_13.txt, 02_rndhard_14.txt, 02_rndhard_15.txt, 02_rndhard_16.txt, 02_rndhard_17.txt, 02_rndhard_18.txt, 02_rndhard_19.txt, 02_rndhard_20.txt, 02_rndhard_21.txt, 02_rndhard_22.txt, 02_rndhard_23.txt, 02_rndhard_24.txt, 02_rndhard_25.txt, 02_rndhard_26.txt, 02_rndhard_27.txt, 02_rndhard_28.txt, 02_rndhard_29.txt, 02_rndhard_30.txt, 02_rndhard_31.txt, 02_rndhard_32.txt, 02_rndhard_33.txt, 02_rndhard_34.txt, 02_rndhard_35.txt, 02_rndhard_36.txt, 02_rndhard_37.txt, 02_rndhard_38.txt, 02_rndhard_39.txt, 03_rndhardsmall_00.txt, 03_rndhardsmall_01.txt, 03_rndhardsmall_02.txt, 03_rndhardsmall_03.txt, 03_rndhardsmall_04.txt, 03_rndhardsmall_05.txt, 03_rndhardsmall_06.txt, 03_rndhardsmall_07.txt, 03_rndhardsmall_08.txt, 03_rndhardsmall_09.txt |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| 00_min_01.txt | RE | 10 ms | 2696 KiB |
| 00_min_02.txt | RE | 10 ms | 2696 KiB |
| 00_min_03.txt | RE | 10 ms | 2696 KiB |
| 00_min_04.txt | RE | 10 ms | 2696 KiB |
| 00_min_05.txt | RE | 10 ms | 2696 KiB |
| 00_min_06.txt | RE | 10 ms | 2696 KiB |
| 00_min_07.txt | RE | 10 ms | 2696 KiB |
| 00_min_08.txt | RE | 10 ms | 2696 KiB |
| 00_sample_01.txt | RE | 10 ms | 2696 KiB |
| 00_sample_02.txt | RE | 10 ms | 2696 KiB |
| 00_sample_03.txt | RE | 11 ms | 2696 KiB |
| 00_sample_04.txt | RE | 10 ms | 2696 KiB |
| 00_sample_05.txt | RE | 10 ms | 2696 KiB |
| 01_rnd_00.txt | RE | 10 ms | 2696 KiB |
| 01_rnd_01.txt | RE | 11 ms | 2696 KiB |
| 01_rnd_02.txt | RE | 10 ms | 2696 KiB |
| 01_rnd_03.txt | RE | 10 ms | 2696 KiB |
| 01_rnd_04.txt | RE | 10 ms | 2696 KiB |
| 01_rnd_05.txt | RE | 10 ms | 2696 KiB |
| 01_rnd_06.txt | RE | 10 ms | 2696 KiB |
| 01_rnd_07.txt | RE | 10 ms | 2696 KiB |
| 01_rnd_08.txt | RE | 10 ms | 2696 KiB |
| 01_rnd_09.txt | RE | 10 ms | 2696 KiB |
| 01_rnd_10.txt | RE | 10 ms | 2696 KiB |
| 01_rnd_11.txt | RE | 10 ms | 2696 KiB |
| 01_rnd_12.txt | RE | 10 ms | 2696 KiB |
| 01_rnd_13.txt | RE | 10 ms | 2696 KiB |
| 01_rnd_14.txt | RE | 10 ms | 2696 KiB |
| 01_rnd_15.txt | RE | 10 ms | 2696 KiB |
| 01_rnd_16.txt | RE | 10 ms | 2696 KiB |
| 01_rnd_17.txt | RE | 10 ms | 2696 KiB |
| 01_rnd_18.txt | RE | 10 ms | 2696 KiB |
| 01_rnd_19.txt | RE | 10 ms | 2696 KiB |
| 02_rndhard_00.txt | RE | 10 ms | 2696 KiB |
| 02_rndhard_01.txt | RE | 11 ms | 2696 KiB |
| 02_rndhard_02.txt | RE | 10 ms | 2696 KiB |
| 02_rndhard_03.txt | RE | 11 ms | 2696 KiB |
| 02_rndhard_04.txt | RE | 11 ms | 2696 KiB |
| 02_rndhard_05.txt | RE | 10 ms | 2696 KiB |
| 02_rndhard_06.txt | RE | 10 ms | 2696 KiB |
| 02_rndhard_07.txt | RE | 10 ms | 2696 KiB |
| 02_rndhard_08.txt | RE | 10 ms | 2696 KiB |
| 02_rndhard_09.txt | RE | 10 ms | 2696 KiB |
| 02_rndhard_10.txt | RE | 10 ms | 2696 KiB |
| 02_rndhard_11.txt | RE | 10 ms | 2696 KiB |
| 02_rndhard_12.txt | RE | 10 ms | 2696 KiB |
| 02_rndhard_13.txt | RE | 10 ms | 2696 KiB |
| 02_rndhard_14.txt | RE | 10 ms | 2696 KiB |
| 02_rndhard_15.txt | RE | 10 ms | 2696 KiB |
| 02_rndhard_16.txt | RE | 10 ms | 2696 KiB |
| 02_rndhard_17.txt | RE | 10 ms | 2696 KiB |
| 02_rndhard_18.txt | RE | 10 ms | 2696 KiB |
| 02_rndhard_19.txt | RE | 11 ms | 2696 KiB |
| 02_rndhard_20.txt | RE | 11 ms | 2696 KiB |
| 02_rndhard_21.txt | RE | 11 ms | 2696 KiB |
| 02_rndhard_22.txt | RE | 11 ms | 2696 KiB |
| 02_rndhard_23.txt | RE | 10 ms | 2696 KiB |
| 02_rndhard_24.txt | RE | 11 ms | 2696 KiB |
| 02_rndhard_25.txt | RE | 11 ms | 2696 KiB |
| 02_rndhard_26.txt | RE | 10 ms | 2696 KiB |
| 02_rndhard_27.txt | RE | 11 ms | 2696 KiB |
| 02_rndhard_28.txt | RE | 11 ms | 2696 KiB |
| 02_rndhard_29.txt | RE | 10 ms | 2696 KiB |
| 02_rndhard_30.txt | RE | 10 ms | 2696 KiB |
| 02_rndhard_31.txt | RE | 10 ms | 2696 KiB |
| 02_rndhard_32.txt | RE | 10 ms | 2696 KiB |
| 02_rndhard_33.txt | RE | 10 ms | 2696 KiB |
| 02_rndhard_34.txt | RE | 10 ms | 2696 KiB |
| 02_rndhard_35.txt | RE | 11 ms | 2696 KiB |
| 02_rndhard_36.txt | RE | 11 ms | 2696 KiB |
| 02_rndhard_37.txt | RE | 11 ms | 2696 KiB |
| 02_rndhard_38.txt | RE | 11 ms | 2696 KiB |
| 02_rndhard_39.txt | RE | 11 ms | 2696 KiB |
| 03_rndhardsmall_00.txt | RE | 11 ms | 2696 KiB |
| 03_rndhardsmall_01.txt | RE | 10 ms | 2696 KiB |
| 03_rndhardsmall_02.txt | RE | 10 ms | 2696 KiB |
| 03_rndhardsmall_03.txt | RE | 10 ms | 2696 KiB |
| 03_rndhardsmall_04.txt | RE | 10 ms | 2696 KiB |
| 03_rndhardsmall_05.txt | RE | 10 ms | 2696 KiB |
| 03_rndhardsmall_06.txt | RE | 11 ms | 2696 KiB |
| 03_rndhardsmall_07.txt | RE | 11 ms | 2696 KiB |
| 03_rndhardsmall_08.txt | RE | 10 ms | 2696 KiB |
| 03_rndhardsmall_09.txt | RE | 11 ms | 2696 KiB |