Submission #67136375
Source Code Expand
Copy
import mathdef sieve(_n):count = [0]*(_n+1)pre=[]for i in range(2,_n+1):if count[i]:continuepre.append(i)for j in range(i,_n+1,i):count[j] += 1return predef cntP(L,R,P):cnt=[True]*(R-L+1)for p in P:if p*p>R:break
import math
def sieve(_n):
count = [0]*(_n+1)
pre=[]
for i in range(2,_n+1):
if count[i]:
continue
pre.append(i)
for j in range(i,_n+1,i):
count[j] += 1
return pre
def cntP(L,R,P):
cnt=[True]*(R-L+1)
for p in P:
if p*p>R:
break
l=((L+p-1)//p)*p
for m in range(max(l,p*p),R+1,p):
cnt[m-L]=False
if L==0:
if R>=0: cnt[0]=False
if R>=1: cnt[1]=False
elif L==1:
cnt[0] = False
return sum(cnt)
L,R=map(int, input().split())
lim=int(math.isqrt(R))+1
pres=sieve(lim)
cnt=cntP(L+1,R,pres)
pp=0
K=int(math.log2(R))+1
for p in pres:
if p*p>R:
break
val=p*p
for k in range(2,K+1):
if val>R:
break
if val>L:
pp+= 1
if val>R//p:
break
val*=p
print(1+cnt+pp)
Submission Info
| Submission Time | |
|---|---|
| Task | E - LCM Sequence |
| User | kotafuku |
| Language | Python (PyPy 3.10-v7.3.12) |
| Score | 500 |
| Code Size | 965 Byte |
| Status | AC |
| Exec Time | 1075 ms |
| Memory | 267908 KiB |
Judge Result
| Set Name | Sample | All | ||||
|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 500 / 500 | ||||
| Status |
|
|
| Set Name | Test Cases |
|---|---|
| Sample | 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt |
| All | 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt, 01_random_1_00.txt, 01_random_1_01.txt, 01_random_1_02.txt, 01_random_1_03.txt, 01_random_1_04.txt, 01_random_1_05.txt, 01_random_1_06.txt, 01_random_1_07.txt, 01_random_1_08.txt, 01_random_1_09.txt, 02_random_2_00.txt, 02_random_2_01.txt, 02_random_2_02.txt, 02_random_2_03.txt, 02_random_2_04.txt, 02_random_2_05.txt, 02_random_2_06.txt, 02_random_2_07.txt, 02_random_2_08.txt, 02_random_2_09.txt, 02_random_2_10.txt, 02_random_2_11.txt, 02_random_2_12.txt, 02_random_2_13.txt, 02_random_2_14.txt, 03_corner_00.txt, 03_corner_01.txt, 03_corner_02.txt |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| 00_sample_00.txt | AC | 65 ms | 76476 KiB |
| 00_sample_01.txt | AC | 73 ms | 82032 KiB |
| 00_sample_02.txt | AC | 1011 ms | 249204 KiB |
| 01_random_1_00.txt | AC | 961 ms | 257480 KiB |
| 01_random_1_01.txt | AC | 961 ms | 222072 KiB |
| 01_random_1_02.txt | AC | 365 ms | 138336 KiB |
| 01_random_1_03.txt | AC | 463 ms | 154936 KiB |
| 01_random_1_04.txt | AC | 1075 ms | 267908 KiB |
| 01_random_1_05.txt | AC | 596 ms | 195584 KiB |
| 01_random_1_06.txt | AC | 713 ms | 208836 KiB |
| 01_random_1_07.txt | AC | 304 ms | 141428 KiB |
| 01_random_1_08.txt | AC | 792 ms | 229292 KiB |
| 01_random_1_09.txt | AC | 446 ms | 159752 KiB |
| 02_random_2_00.txt | AC | 645 ms | 178972 KiB |
| 02_random_2_01.txt | AC | 621 ms | 178712 KiB |
| 02_random_2_02.txt | AC | 632 ms | 178792 KiB |
| 02_random_2_03.txt | AC | 773 ms | 205456 KiB |
| 02_random_2_04.txt | AC | 723 ms | 205612 KiB |
| 02_random_2_05.txt | AC | 731 ms | 205824 KiB |
| 02_random_2_06.txt | AC | 512 ms | 169276 KiB |
| 02_random_2_07.txt | AC | 504 ms | 169484 KiB |
| 02_random_2_08.txt | AC | 523 ms | 169428 KiB |
| 02_random_2_09.txt | AC | 923 ms | 243212 KiB |
| 02_random_2_10.txt | AC | 898 ms | 243344 KiB |
| 02_random_2_11.txt | AC | 866 ms | 243308 KiB |
| 02_random_2_12.txt | AC | 844 ms | 218532 KiB |
| 02_random_2_13.txt | AC | 879 ms | 218400 KiB |
| 02_random_2_14.txt | AC | 842 ms | 218296 KiB |
| 03_corner_00.txt | AC | 64 ms | 76892 KiB |
| 03_corner_01.txt | AC | 390 ms | 159992 KiB |
| 03_corner_02.txt | AC | 85 ms | 85948 KiB |