結果

問題 No.2 素因数ゲーム
ユーザー sho_00sho_00
提出日時 2020-03-20 19:17:50
言語 Python3
(3.13.1 + numpy 2.2.1 + scipy 1.14.1)
結果
WA  
実行時間 -
コード長 854 bytes
コンパイル時間 101 ms
コンパイル使用メモリ 12,800 KB
実行使用メモリ 817,976 KB
最終ジャッジ日時 2024-12-14 14:57:48
合計ジャッジ時間 22,347 ms
ジャッジサーバーID
(参考情報)
judge5 / judge1
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 31 ms
17,828 KB
testcase_01 AC 31 ms
10,880 KB
testcase_02 AC 31 ms
10,880 KB
testcase_03 AC 31 ms
11,008 KB
testcase_04 AC 31 ms
11,008 KB
testcase_05 WA -
testcase_06 AC 48 ms
11,136 KB
testcase_07 WA -
testcase_08 TLE -
testcase_09 AC 151 ms
11,392 KB
testcase_10 AC 132 ms
11,264 KB
testcase_11 WA -
testcase_12 WA -
testcase_13 WA -
testcase_14 WA -
testcase_15 AC 176 ms
11,392 KB
testcase_16 WA -
testcase_17 TLE -
testcase_18 WA -
testcase_19 AC 97 ms
11,264 KB
testcase_20 MLE -
testcase_21 AC 160 ms
11,264 KB
testcase_22 WA -
testcase_23 AC 84 ms
11,136 KB
testcase_24 AC 2,933 ms
13,184 KB
testcase_25 WA -
testcase_26 WA -
testcase_27 WA -
testcase_28 WA -
testcase_29 WA -
testcase_30 AC 235 ms
34,048 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

import math
import sys
N=int(input())

def primenumber_table(N):  # N以下の素数テーブル エラトステネスの篩
  table=[i for i in range(2,N+1)]
  l=[]
  while len(table)!=0:
    num=table[0]
    l.append(num)
    i=0
    while i<len(table):
      if table[i]%num==0:
        table.pop(i)
      else:
        i+=1
  return l

table=primenumber_table(int(math.sqrt(N)))
L=[]
init_N=N
while N!=1:
  for num in table:
    cnt=0
    while N%num==0:
      cnt+=1
      N//=num
    if cnt!=0:
      if cnt in L:
        print('Bob')
        sys.exit()
      L.append(cnt)
  if N==init_N:
    L.append(1)
    N=1
  elif N in primenumber_table(N):
    if 1 in L:
      print('Bob')
      sys.exit()
    else:
      L.append(1)
grundy_num=0
for i in range(len(L)):
  grundy_num=grundy_num^L[i]
if grundy_num!=0:
  print('Alice')
else:
  print('Bob')
0