Submission #66770437


Source Code Expand

Copy
N,M=map(int,input().split())
G=[[] for _ in range(N)]
for i in range(M):
a,b,w=map(int, input().split())
a-=1
b-=1
G[a].append((b,w))
seen=[False]*N
dist=[0]*N
bas=[]
st=[(0,0)]
seen[0]=True
while st:
u,idx=st.pop()
if idx<len(G[u]):
st.append((u,idx+1))
v,w=G[u][idx]
if not seen[v]:
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
N,M=map(int,input().split())
G=[[] for _ in range(N)]
for i in range(M):
    a,b,w=map(int, input().split())
    a-=1
    b-=1
    G[a].append((b,w))

seen=[False]*N
dist=[0]*N
bas=[]

st=[(0,0)]
seen[0]=True
while st:
    u,idx=st.pop()
    if idx<len(G[u]):
        st.append((u,idx+1))
        v,w=G[u][idx]
        if not seen[v]:
            seen[v]=True
            dist[v]=dist[u]^w
            st.append((v,0))
        else:
            c=dist[u]^w^dist[v]
            for b in bas:
                c=min(c,c^b)
                
            if c:
                bas.append(c)
                bas.sort(reverse=True)
                
                for i in range(len(bas)):
                    for j in range(i+1,len(bas)):
                        bas[j]=min(bas[j],bas[j]^bas[i])


if not seen[-1]:
    print(-1)
    exit()

    
ans=dist[-1]
for b in bas:
    ans=min(ans,ans^b)
print(ans)


Submission Info

Submission Time
Task D - XOR Shortest Walk
User kotafuku
Language Python (PyPy 3.10-v7.3.12)
Score 0
Code Size 955 Byte
Status WA
Exec Time 86 ms
Memory 81528 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 0 / 400
Status
AC × 3
AC × 30
WA × 3
Set Name Test Cases
Sample sample_01.txt, sample_02.txt, sample_03.txt
All hand_01.txt, hand_02.txt, hand_03.txt, hand_04.txt, hand_05.txt, hand_06.txt, hand_07.txt, hand_08.txt, random_01.txt, random_02.txt, random_03.txt, random_04.txt, random_05.txt, random_06.txt, random_07.txt, random_08.txt, random_09.txt, random_10.txt, random_11.txt, random_12.txt, random_13.txt, random_14.txt, random_15.txt, random_16.txt, random_17.txt, random_18.txt, random_19.txt, random_20.txt, random_21.txt, random_22.txt, sample_01.txt, sample_02.txt, sample_03.txt
Case Name Status Exec Time Memory
hand_01.txt AC 67 ms 76492 KiB
hand_02.txt AC 67 ms 76268 KiB
hand_03.txt AC 67 ms 76632 KiB
hand_04.txt AC 67 ms 76536 KiB
hand_05.txt AC 66 ms 76420 KiB
hand_06.txt WA 65 ms 76468 KiB
hand_07.txt WA 67 ms 76408 KiB
hand_08.txt WA 67 ms 76636 KiB
random_01.txt AC 68 ms 76352 KiB
random_02.txt AC 78 ms 81088 KiB
random_03.txt AC 69 ms 76564 KiB
random_04.txt AC 73 ms 76344 KiB
random_05.txt AC 69 ms 76448 KiB
random_06.txt AC 72 ms 76332 KiB
random_07.txt AC 69 ms 76716 KiB
random_08.txt AC 77 ms 80844 KiB
random_09.txt AC 69 ms 76480 KiB
random_10.txt AC 81 ms 80988 KiB
random_11.txt AC 69 ms 76412 KiB
random_12.txt AC 78 ms 81072 KiB
random_13.txt AC 76 ms 81140 KiB
random_14.txt AC 78 ms 80852 KiB
random_15.txt AC 76 ms 81404 KiB
random_16.txt AC 70 ms 76600 KiB
random_17.txt AC 84 ms 81128 KiB
random_18.txt AC 83 ms 81088 KiB
random_19.txt AC 84 ms 81328 KiB
random_20.txt AC 85 ms 81396 KiB
random_21.txt AC 85 ms 81384 KiB
random_22.txt AC 86 ms 81528 KiB
sample_01.txt AC 70 ms 76768 KiB
sample_02.txt AC 70 ms 76464 KiB
sample_03.txt AC 69 ms 76364 KiB


2025-06-30 (Mon)
12:03:25 +09:00