結果
問題 |
No.407 鴨等素数間隔列の数え上げ
|
ユーザー |
![]() |
提出日時 | 2016-08-05 23:16:14 |
言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
結果 |
RE
|
実行時間 | - |
コード長 | 790 bytes |
コンパイル時間 | 361 ms |
コンパイル使用メモリ | 12,544 KB |
実行使用メモリ | 56,512 KB |
最終ジャッジ日時 | 2024-11-07 01:41:39 |
合計ジャッジ時間 | 7,016 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 5 |
other | AC * 21 WA * 2 RE * 4 TLE * 2 -- * 2 |
ソースコード
N, L = list(map(int, input().strip().split(' '))) ans = 0 NMAX = L // (N - 1) nonprime = [False] * (NMAX + 1) for i in range(6, len(nonprime), 6): if nonprime[i - 1] and nonprime[i + 1]: continue if not nonprime[i - 1]: k = L - (i - 1) * (N - 1) if k < 0: break ans += k + 1 j = 3 x = i - 1 while x * j <= NMAX: nonprime[x * j] = True j += 2 if not nonprime[i + 1]: k = L - (i + 1) * (N - 1) if k < 0: break ans += k + 1 j = 3 x = i + 1 while x * j <= NMAX: nonprime[x * j] = True j += 2 if 2 * (N - 1) <= L: ans += L - 2 * (N - 1) + 1 if 3 * (N - 1) <= L: ans += L - 3 * (N - 1) + 1 print(ans)