Submission #4653127


Source Code Expand

N = int(input())
XY = [list(map(int,input().split())) for _ in range(1,N)]
Q = int(input())
AB = [list(map(int,input().split())) for _ in range(Q)]

LCA = list(range(N+1))


def getV(lca,inte):#inteが経由する頂点を全て返す。ただしLCAは1を基準とする。
#全ての頂点が辺でつながれない、または閉路が存在する場合兵庫県警に逮捕される
            if inte == 1:
                return [1]
            elif lca[inte] == 1:
                return [1,inte]
            else:
                return getV(lca,lca[inte])+[inte]

def getD(lca,int1,int2):#int1 < int2 である方が望ましい
        
    L1 = getV(lca,int1)
    L2 = getV(lca,int2)
    length1 = -1
    length2 = 0
    for l in L1[::-1]:
        length1 += 1
        if L2.__contains__(l):
            length2 = len(L2[L2.index(l):])-1
            break
    return length1+length2
        
            
    
    
for x,y in XY:
    LCA[max(x,y)] = min(x,y) 

for a,b in AB:
    print(getD(LCA,min(a,b),max(a,b))+1)

Submission Info

Submission Time
Task D - 閉路
User BARISU
Language Python (3.4.3)
Score 0
Code Size 1068 Byte
Status RE
Exec Time 809 ms
Memory 56580 KB

Judge Result

Set Name Sample Subtask1 Subtask2
Score / Max Score 0 / 0 0 / 30 0 / 70
Status
AC × 3
RE × 12
AC × 3
RE × 24
Set Name Test Cases
Sample subtask0_sample01.txt, subtask0_sample02.txt, subtask0_sample03.txt
Subtask1 subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt
Subtask2 subtask0_sample01.txt, subtask0_sample02.txt, subtask0_sample03.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask2_01.txt, subtask2_02.txt, subtask2_03.txt, subtask2_04.txt, subtask2_05.txt, subtask2_06.txt, subtask2_07.txt, subtask2_08.txt, subtask2_09.txt, subtask2_10.txt, subtask2_11.txt, subtask2_12.txt
Case Name Status Exec Time Memory
subtask0_sample01.txt AC 17 ms 3064 KB
subtask0_sample02.txt AC 17 ms 3064 KB
subtask0_sample03.txt AC 17 ms 3064 KB
subtask1_01.txt RE 442 ms 31292 KB
subtask1_02.txt RE 445 ms 31292 KB
subtask1_03.txt RE 80 ms 3912 KB
subtask1_04.txt RE 78 ms 3928 KB
subtask1_05.txt RE 82 ms 4180 KB
subtask1_06.txt RE 82 ms 4176 KB
subtask1_07.txt RE 448 ms 32204 KB
subtask1_08.txt RE 452 ms 32196 KB
subtask1_09.txt RE 451 ms 32176 KB
subtask1_10.txt RE 449 ms 32188 KB
subtask1_11.txt RE 453 ms 32200 KB
subtask1_12.txt RE 454 ms 32164 KB
subtask2_01.txt RE 756 ms 52468 KB
subtask2_02.txt RE 739 ms 54880 KB
subtask2_03.txt RE 364 ms 21964 KB
subtask2_04.txt RE 380 ms 21988 KB
subtask2_05.txt RE 386 ms 26948 KB
subtask2_06.txt RE 393 ms 26948 KB
subtask2_07.txt RE 795 ms 56564 KB
subtask2_08.txt RE 782 ms 56580 KB
subtask2_09.txt RE 760 ms 56552 KB
subtask2_10.txt RE 809 ms 56564 KB
subtask2_11.txt RE 787 ms 56564 KB
subtask2_12.txt RE 805 ms 56548 KB