結果

問題 No.2724 Coprime Game 1
コンテスト
ユーザー MasKoaTS
提出日時 2023-04-08 22:11:16
言語 PyPy3
(7.3.17)
コンパイル:
pypy3 -mpy_compile _filename_
実行:
pypy3 _filename_
結果
AC  
実行時間 270 ms / 2,000 ms
コード長 532 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 252 ms
コンパイル使用メモリ 85,248 KB
実行使用メモリ 153,344 KB
最終ジャッジ日時 2026-04-19 04:06:21
合計ジャッジ時間 2,787 ms
ジャッジサーバーID
(参考情報)
judge3_1 / judge2_1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 1
other AC * 7
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

import sys
input = sys.stdin.readline

query = [int(input()) for _ in [0] * int(input())]

m = max(query)
is_prime = [True] * (m + 1)
is_prime[0] = is_prime[1] = False
for i in range(2, int(m ** 0.5 + 2)):
	if not(is_prime[i]):
		continue
	for j in range(i * i, m + 1, i):
		is_prime[j] = False

dp = [0] * (m + 1)
ans = [''] * (m + 1)
for n in range(2, m + 1):
	dp[n] = dp[n - 1]
	if(is_prime[n]):
		dp[n] += 1
		ans[n] = 'P'
		continue
	ans[n] = 'K' if(((n - 2) - dp[n] + dp[n >> 1]) & 1) else 'P'

for k in query:
	print(ans[k])
0