QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#304405#8011. Instituteucup-team1631#TL 66ms12684kbPython31.1kb2024-01-13 19:20:162024-01-13 19:20:18

Judging History

你现在查看的是最新测评结果

  • [2024-01-13 19:20:18]
  • 评测
  • 测评结果:TL
  • 用时:66ms
  • 内存:12684kb
  • [2024-01-13 19:20:16]
  • 提交

answer

from sys import stdin
input=lambda :stdin.readline()[:-1]

def SCC(n,edge):
  res,S,P=[],[],[]
  Q,state=list(range(n)),[0]*n
  while Q:
    v=Q.pop()
    if v<0:
      d=state[~v]-1
      if P[-1]>d:
        res.append(S[d:])
        del S[d:]
        P.pop()
        for u in res[-1]:
          state[u]=-1
    elif state[v]>0:
      while P[-1]>state[v]:
        P.pop()
    elif state[v]==0:
      S.append(v)
      P.append(len(S))
      state[v]=len(S)
      Q.append(~v)
      Q.extend(edge[v])
  return res[::-1]

n,m=map(int,input().split())
edge0=[[] for i in range(n)]
edge1=[[] for i in range(n)]
for i in range(m):
  a,b,t=map(lambda x:int(x)-1,input().split())
  if t==0:
    edge0[a].append(b)
  else:
    edge1[a].append(b)

G=SCC(n,edge1)
grp=[0]*n
for i in range(len(G)):
  for v in G[i]:
    grp[v]=i

todo=[0]
seen=[0]*n
seen[0]=1
while todo:
  v=todo.pop()
  for u in edge0[v]:
    if seen[u]==0:
      seen[u]=1
      todo.append(u)
      
  for u in edge1[v]:
    if grp[u]!=grp[v]:
      print('Yes')
      exit()
    if seen[u]==0:
      seen[u]=1
      todo.append(u)

print('No')

詳細信息

Test #1:

score: 100
Accepted
time: 12ms
memory: 9072kb

input:

3 4
1 2 1
2 3 2
3 2 1
3 1 2

output:

Yes

result:

ok answer is YES

Test #2:

score: 0
Accepted
time: 9ms
memory: 8940kb

input:

6 8
1 2 1
2 3 2
3 2 2
3 4 1
4 1 2
1 5 2
5 4 2
6 1 2

output:

No

result:

ok answer is NO

Test #3:

score: 0
Accepted
time: 13ms
memory: 9332kb

input:

1000 1000
141 466 1
634 659 1
179 96 2
445 344 2
993 974 1
310 114 2
32 333 1
758 832 1
834 1 1
874 825 2
480 61 2
765 100 2
804 616 1
496 545 1
786 261 2
899 263 1
962 237 2
766 807 1
561 583 1
35 425 1
201 291 1
6 142 1
61 386 2
785 861 2
386 986 2
288 769 2
850 209 1
660 259 2
258 143 2
646 715 2...

output:

Yes

result:

ok answer is YES

Test #4:

score: 0
Accepted
time: 19ms
memory: 9304kb

input:

1000 3000
719 279 2
857 23 1
984 625 2
904 509 2
892 456 2
589 195 2
718 932 2
608 363 1
474 672 1
217 993 2
165 895 2
727 329 2
932 404 2
952 146 2
201 272 2
412 895 2
228 267 2
396 365 2
813 794 2
259 250 1
968 764 2
100 76 2
924 665 2
981 931 2
292 975 2
903 649 2
793 101 2
54 703 1
853 58 2
356 ...

output:

Yes

result:

ok answer is YES

Test #5:

score: 0
Accepted
time: 15ms
memory: 9288kb

input:

1000 3000
686 470 2
132 418 2
775 962 2
814 8 2
450 767 2
580 243 2
742 534 2
508 304 2
396 513 2
731 385 2
499 309 2
144 150 2
111 209 2
340 189 1
219 755 2
511 655 2
428 941 2
165 707 2
253 619 2
140 766 2
999 132 2
415 101 2
887 192 2
598 262 2
312 675 1
97 527 2
407 179 2
11 154 1
107 996 2
586 ...

output:

No

result:

ok answer is NO

Test #6:

score: 0
Accepted
time: 39ms
memory: 12372kb

input:

10000 10000
1496 8533 1
6761 8802 2
3147 8733 2
7074 899 1
4191 9520 2
2576 1464 1
8600 116 2
72 5894 1
1605 6769 1
344 2583 2
9951 8053 2
2663 1396 1
3172 7307 1
8490 8085 2
6623 7814 2
680 4471 2
4906 3810 1
5952 8860 1
9670 3644 2
7993 6329 2
4666 1119 2
3115 3676 2
4506 2979 2
1451 2540 2
5002 9...

output:

No

result:

ok answer is NO

Test #7:

score: 0
Accepted
time: 56ms
memory: 12684kb

input:

10000 30000
8022 6065 2
8185 3186 1
9803 6371 1
4947 1271 2
926 9103 2
8367 1328 2
6314 1627 2
203 4366 2
9992 1021 2
5092 9288 1
7412 6217 2
4569 5568 2
7064 6970 2
4363 1581 2
772 6243 2
2571 4950 2
5821 8367 1
7985 5827 2
2064 4754 2
900 605 1
2083 3137 2
7852 1194 2
4679 6769 2
9389 6753 2
2980 ...

output:

Yes

result:

ok answer is YES

Test #8:

score: 0
Accepted
time: 66ms
memory: 12584kb

input:

10000 30000
6708 6418 2
120 3115 2
1647 6703 1
86 1015 2
5041 8379 2
1926 2108 2
1030 4579 2
1129 4269 2
7245 1725 2
9605 679 2
2903 1467 2
233 9636 2
8796 738 2
1535 7292 2
6010 1476 2
9300 4436 2
7465 5575 2
4508 1537 2
4352 9653 2
6646 4932 2
6069 2244 2
8361 4603 2
3566 9063 2
6836 5173 2
2194 3...

output:

No

result:

ok answer is NO

Test #9:

score: -100
Time Limit Exceeded

input:

300000 300000
94246 283175 1
83027 278500 2
265400 62933 2
174359 187478 2
175633 104311 1
279454 288119 1
143302 18555 1
258847 186237 1
207649 136874 1
182701 13491 1
261536 220848 1
206849 280776 2
60075 295 2
242474 256281 2
293852 21768 2
36248 183324 2
145642 275253 1
9956 11629 2
25110 265376...

output:

No

result: