結果
問題 |
No.812 Change of Class
|
ユーザー |
![]() |
提出日時 | 2020-12-26 02:34:38 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 927 ms / 4,000 ms |
コード長 | 796 bytes |
コンパイル時間 | 223 ms |
コンパイル使用メモリ | 82,728 KB |
実行使用メモリ | 102,444 KB |
最終ジャッジ日時 | 2024-09-22 21:21:17 |
合計ジャッジ時間 | 19,829 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 60 |
ソースコード
from collections import deque import sys input = sys.stdin.buffer.readline sys.setrecursionlimit(10 ** 7) N, M = map(int, input().split()) edge = [[] for _ in range(N)] for _ in range(M): a, b = map(int, input().split()) a -= 1 b -= 1 edge[a].append(b) edge[b].append(a) Q = int(input()) for _ in range(Q): a = int(input()) - 1 dist = [-1] * N dist[a] = 0 size = 0 que = deque([a]) while que: s = que.popleft() size += 1 d = dist[s] for t in edge[s]: if dist[t] == -1: dist[t] = d + 1 que.append(t) if d <= 1: print(size - 1, 0) else: d -= 1 time = 0 while d: time += 1 d //= 2 print(size - 1, time)