Submission #66752936
Source Code Expand
Copy
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
T = 1
def init():
global T
#T = _I()
def solve():
N,M = _M()
g = []
for i in range(M):
a,b,w = _M()
g.append((a-1,b-1,w))
p = [1<<11]*N
p[0] = 0
for i in _R(10*N):
upd = False
for a,b,w in g:
if p[b] > p[a]^w:
p[b] = p[a]^w
upd = True
if not upd:
break
if p[N-1] < 1<<11:
print(p[N-1])
else:
print(-1)
#--------------ごっつりしていってね--------------
#あぁそうそう ごちうさ楽しみ
import sys
import math
from copy import deepcopy as dc
sys.setrecursionlimit(10 ** 6)
from collections import defaultdict as dd
import heapq
from itertools import permutations as per
_S = input;_R = range;_P = print; _E = enumerate;
def _RR(a): return range(a-1,-1,-1)
def _I(): return int(_S())
def _M(): return map(int, _S().split())
def _SS(): return _S().strip().split()
def _L(): return list(_M())
def _LS(): return list(_S())
def _T(): return tuple(_M())
def yn(b): print("Yes" if b else "No")
def fs(b): print("First" if b else "Second")
def lis(c,*a):
if not len(a): return 0 if c == 0 else []
if c == 0: return a[0]
return [lis(c-1,*a[1:]) for i in _R(a[0])]
def in2(a,fn):
for i in _R(len(a)): a[i]=fn()
biga = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";smaa = "abcdefghijklmnopqrstuvwxyz"
ctoi = lambda c: ord(c) - ord('a')
ctoi2 = lambda c: ord(c) - ord('A')
itoc = lambda i: chr(ord('a') + i)
itoc2 = lambda i: chr(ord('A') + i)
inf = 10 ** 18
mod = 998244353
def around(x,y,type_=False):
rt = []
rt.extend([(x+1,y),(x-1,y),(x,y+1),(x,y-1)])
if type_:
rt.extend([(x+1,y+1),(x-1,y-1),(x-1,y+1),(x+1,y-1)])
return rt
def acc(a):
b = [0]
for i in a:
b.append(b[-1] + i)
return b
class heap:
l = []
def __init__(self,*s): self.l = list(s);heapq.heapify(self.l)
def min(self): return False if (len(self.l) == 0) else self.l[0]
def pop(self): return False if (len(self.l) == 0) else heapq.heappop(self.l)
def push(self,n): heapq.heappush(self.l,n)
def dump(self): return heapq.nsmallest(len(self.l),self.l)
def max(self): return False if (len(self.l) == 0) else heapq.nlargest(1,self.l)[0]
def len(self): return len(self.l)
class base:
bn = 0; dig = 0; num = []
def __init__(self,base_num,digit = 0):
self.bn = base_num; self.dig = digit; self.num = [0]*digit
def max(self): return(self.bn**self.dig-1)
def dump(self): return(self.num[::-1])
def ncp(self,digit,n): self.num[digit] = min(self.num[digit]+n,self.bn-1)
def plus(self,digit,n):
for i in _R(digit-self.dig+1): self.num.append(0)
self.dig = max(self.dig,digit+1)
if (self.num[digit]+n >= self.bn):
self.plus(digit+1,(self.num[digit]+n)//self.bn)
self.num[digit] = (self.num[digit]+n)%self.bn
def copy(self,n):
self.num = dc(n)
dig = len(self.num)
def change(self,n):
digit = int(math.log(n,self.bn))if n!=0 else 0+1
for i in _R(digit-self.dig+1): self.num.append(0)
self.dig = max(self.dig,digit+1)
for i in _R(self.dig):
self.num[i] = n%self.bn**(i+1)//self.bn**i
n -= self.num[i]
return self.dump()
def b10(self): return(sum([self.num[i]*self.bn**i for i in _R(self.dig)]))
def gin(N, M=None):
g = [[] for _ in range(N)]
for _ in range(N-1 if M is None else M):
u, v = map(int, input().split());u -= 1;v -= 1
g[u].append(v);g[v].append(u)
return g
def ginh(N, M):
g = [[] for _ in range(N)]
for i in range(M):
u, v, h = map(int, input().split());u -= 1;v -= 1
g[u].append((v,h));g[v].append((u,h))
return g
from atcoder.segtree import SegTree
class rhash:
hs = None
def __init__(self,S,N):
self.hs = SegTree(msum,0,[ctoi(S[i])*pow(31,i,mod) for i in _R(N)])
def get(self,l,r):
return self.hs.prod(l,r+1)*pow(pow(31,l,mod),mod-2,mod)%mod
def getall(self):
return self.hs.all_prod()
def change(self,n,c):
self.hs.set(n,ctoi(c)*pow(31,n,mod))
def nwse(s,x,y,rev=False):
if (rev):
s = {"N":"S","S":"N","W":"E","E":"W"}[s]
if s=="N": return (x-1,y)
elif s=="W": return (x,y-1)
elif s=="S": return (x+1,y)
elif s=="E": return (x,y+1)
init()
for i in _R(T):
solve()
Submission Info
Submission Time |
|
Task |
D - XOR Shortest Walk |
User |
potat_p |
Language |
Python (PyPy 3.10-v7.3.12) |
Score |
0 |
Code Size |
4512 Byte |
Status |
WA |
Exec Time |
141 ms |
Memory |
85996 KiB |
Judge Result
Set Name |
Sample |
All |
Score / Max Score |
0 / 0 |
0 / 400 |
Status |
|
|
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 |
129 ms |
84276 KiB |
hand_02.txt |
AC |
128 ms |
84288 KiB |
hand_03.txt |
AC |
129 ms |
83960 KiB |
hand_04.txt |
AC |
128 ms |
84236 KiB |
hand_05.txt |
AC |
128 ms |
84304 KiB |
hand_06.txt |
AC |
128 ms |
84200 KiB |
hand_07.txt |
AC |
128 ms |
84192 KiB |
hand_08.txt |
AC |
128 ms |
84336 KiB |
random_01.txt |
AC |
129 ms |
84080 KiB |
random_02.txt |
AC |
137 ms |
84804 KiB |
random_03.txt |
AC |
128 ms |
84196 KiB |
random_04.txt |
AC |
134 ms |
84692 KiB |
random_05.txt |
AC |
128 ms |
84120 KiB |
random_06.txt |
AC |
131 ms |
84656 KiB |
random_07.txt |
AC |
127 ms |
84028 KiB |
random_08.txt |
AC |
136 ms |
84580 KiB |
random_09.txt |
AC |
129 ms |
84272 KiB |
random_10.txt |
AC |
140 ms |
85996 KiB |
random_11.txt |
AC |
128 ms |
84116 KiB |
random_12.txt |
AC |
136 ms |
84648 KiB |
random_13.txt |
WA |
134 ms |
84520 KiB |
random_14.txt |
WA |
134 ms |
84592 KiB |
random_15.txt |
WA |
130 ms |
84136 KiB |
random_16.txt |
AC |
130 ms |
83960 KiB |
random_17.txt |
AC |
141 ms |
85756 KiB |
random_18.txt |
AC |
141 ms |
85704 KiB |
random_19.txt |
AC |
141 ms |
85744 KiB |
random_20.txt |
AC |
139 ms |
85788 KiB |
random_21.txt |
WA |
139 ms |
85812 KiB |
random_22.txt |
WA |
140 ms |
85444 KiB |
sample_01.txt |
AC |
130 ms |
84052 KiB |
sample_02.txt |
AC |
128 ms |
84368 KiB |
sample_03.txt |
AC |
128 ms |
84256 KiB |