結果

問題 No.812 Change of Class
ユーザー neko_the_shadow
提出日時 2019-04-15 22:53:48
言語 PyPy3
(7.3.15)
結果
TLE  
実行時間 -
コード長 798 bytes
コンパイル時間 862 ms
コンパイル使用メモリ 82,220 KB
実行使用メモリ 192,852 KB
最終ジャッジ日時 2024-06-12 20:52:40
合計ジャッジ時間 8,894 ms
ジャッジサーバーID
(参考情報)
judge3 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample -- * 3
other AC * 5 TLE * 1 -- * 54
権限があれば一括ダウンロードができます

ソースコード

diff #

import collections, math

n, m = map(int, input().split())

friend = collections.defaultdict(list)
for _ in range(m):
    p, q = map(lambda s : int(s) - 1, input().split())
    friend[p].append(q)
    friend[q].append(p)

q = int(input())
alist = [int(input()) - 1 for _ in range(q)]
for a in alist:
    d = [float('inf')] * n
    d[a] = 0
    stack = [a]
    while stack:
        x = stack.pop()
        for y in friend[x]:
            if d[x] + 1 < d[y]:
                d[y] = d[x] + 1
                stack.append(y)

    b = 0 # 友達の数
    c = 0 # もっとも遠い友達までのスコア。
    for v in d:
        if v != 0 and v != float('inf'):
            b += 1
            c = max(c, v)
    
    if c == 0:
        print(b, c)
    else:
        print(b, math.ceil(math.log2(c)))
0