結果

問題 No.826 連絡網
ユーザー sho_00
提出日時 2020-04-09 21:13:34
言語 PyPy3
(7.3.15)
結果
TLE  
(最新)
AC  
(最初)
実行時間 -
コード長 762 bytes
コンパイル時間 1,252 ms
コンパイル使用メモリ 82,204 KB
実行使用メモリ 271,352 KB
最終ジャッジ日時 2024-09-13 20:38:35
合計ジャッジ時間 21,266 ms
ジャッジサーバーID
(参考情報)
judge3 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 2
other AC * 29 TLE * 1
権限があれば一括ダウンロードができます

ソースコード

diff #

from collections import deque
import math
N,P=map(int,input().split())

def searchPrimeNum(N):
  max = int(math.sqrt(N))
  searchList = [i for i in range(2,N+1)]
  primeNum = []
  while searchList[0] <= max:
    primeNum.append(searchList[0])
    tmp = searchList[0]
    searchList = [i for i in searchList if i % tmp != 0]
  primeNum.extend(searchList)
  return primeNum

if P==1:
  print(1)
else:
  E=[[] for _ in range(N)]
  table=searchPrimeNum(N)
  for v in table:
    i=2
    while v*i<=N:
      E[v-1].append(v*i-1)
      E[v*i-1].append(v-1)
      i+=1
  P-=1
  seen=[0]*N
  seen[P]=1
  stack=deque([P])
  cnt=1
  while stack:
    u=stack.pop()
    for v in E[u]:
      if seen[v]!=1:
        seen[v]=1
        cnt+=1
        stack.append(v)
  print(cnt)
0