結果
問題 |
No.843 Triple Primes
|
ユーザー |
|
提出日時 | 2025-10-04 17:21:33 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 60 ms / 2,000 ms |
コード長 | 879 bytes |
コンパイル時間 | 850 ms |
コンパイル使用メモリ | 82,888 KB |
実行使用メモリ | 74,060 KB |
最終ジャッジ日時 | 2025-10-04 17:21:38 |
合計ジャッジ時間 | 4,761 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 42 |
ソースコード
# https://yukicoder.me/problems/no/843 def main(): N = int(input()) if N == 1: print(0) return prime_list = [True] * (N + 1) prime_list[1] = False primes = [] for p in range(2, N + 1): if not prime_list[p]: continue primes.append(p) x = 2 * p while x <= N: prime_list[x] = False x += p odd_prime = [p for p in primes if p % 2 == 1] answer = 0 # r == 2の場合 for i in range(1, 4): j = 4 - i if i <= N and j <= N and prime_list[i] and prime_list[j]: answer += 1 # r奇数の場合 for r in odd_prime: if r ** 2 <= 2 * N: q = r ** 2 - 2 if q <= N and prime_list[q]: answer += 2 print(answer) if __name__ == "__main__": main()