結果
問題 |
No.826 連絡網
|
ユーザー |
![]() |
提出日時 | 2023-02-08 08:54:43 |
言語 | PyPy3 (7.3.15) |
結果 |
TLE
|
実行時間 | - |
コード長 | 874 bytes |
コンパイル時間 | 181 ms |
コンパイル使用メモリ | 81,844 KB |
実行使用メモリ | 88,784 KB |
最終ジャッジ日時 | 2024-07-05 22:51:46 |
合計ジャッジ時間 | 4,757 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 10 TLE * 1 -- * 19 |
ソースコード
from collections import deque def bfs(G, s, N): Q = deque([]) dist = [-1] * N par = [-1] * N sz = [1] * N dist[s] = 0 rev = [0] * N for u in G[s]: par[u] = s dist[u] = 1 sz[u] += sz[s] Q.append(u) while Q: u = Q.popleft() for v in G[u]: if dist[v] != -1: continue if v < u: rev[v] = rev[u] + 1 else: rev[v] = rev[u] dist[v] = dist[u] + 1 par[v] = u sz[v] += sz[u] Q.append(v) return dist N, P = map(int, input().split()) G = [[] for i in range(N + 1)] for i in range(2, N): for j in range(i, N + 1, i): if j + i <= N: G[j].append(j + i) G[j + i].append(j) D = bfs(G, P, N + 1) print(N + 1 - D.count(-1))