結果
問題 | No.2563 色ごとのグループ |
ユーザー |
![]() |
提出日時 | 2023-12-02 14:48:26 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 464 ms / 2,000 ms |
コード長 | 1,074 bytes |
コンパイル時間 | 548 ms |
コンパイル使用メモリ | 82,432 KB |
実行使用メモリ | 107,776 KB |
最終ジャッジ日時 | 2024-09-26 17:27:37 |
合計ジャッジ時間 | 7,592 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 35 |
ソースコード
#############################################################import syssys.setrecursionlimit(10**7)from heapq import heappop,heappushfrom collections import deque,defaultdict,Counterfrom bisect import bisect_left, bisect_rightfrom itertools import product,combinations,permutationsfrom math import sin,cos#from math import isqrt #DO NOT USE PyPyipt = sys.stdin.readlineiin = lambda :int(ipt())lmin = lambda :list(map(int,ipt().split()))#############################################################N,M = lmin()C = lmin()G = [[] for _ in range(N)]for _ in range(M):u,v = lmin()u,v = u-1,v-1if C[u] == C[v]:G[u].append(v)G[v].append(u)cnt = [0]*(N+1)visited = [0]*Nfor i in range(N):if visited[i]:continuecnt[C[i]] += 1visited[i] = 1st = [i]while st:cur = st.pop()for nxt in G[cur]:if visited[nxt]:continuevisited[nxt] = 1st.append(nxt)ans = 0for i in range(N+1):ans += max(0, cnt[i]-1)print(ans)