結果
問題 |
No.1653 Squarefree
|
ユーザー |
![]() |
提出日時 | 2022-03-30 17:13:40 |
言語 | PyPy3 (7.3.15) |
結果 |
TLE
|
実行時間 | - |
コード長 | 554 bytes |
コンパイル時間 | 410 ms |
コンパイル使用メモリ | 82,860 KB |
実行使用メモリ | 171,136 KB |
最終ジャッジ日時 | 2024-11-15 07:05:58 |
合計ジャッジ時間 | 86,095 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 11 WA * 1 TLE * 26 |
ソースコード
import math l,r = map(int,input().split()) v = [l+i for i in range(r-l+1)] w = [0 for i in range(r-l+1)] dp = [0 for i in range(10**6+1)] for i in range(2, 10**6): if dp[i] == 0: for j in range(r-l+1): if v[j]%(i**2) == 0: w[j] = 1 while v[j]%i == 0: v[j]//=i for j in range(i, 10**6+1, i): dp[j] = 1 #残ったもの… 10**12 - 10**18 for j in range(r-l+1): if w[j] == 0: ins = math.floor(math.sqrt(v[j] // 2)) if ins**2 > v[j]: ins -= 1 if ins > 1 and ins**2 == v[j]: w[j] = 1 #print(w) print(r-l+1 - sum(w))