結果
| 問題 |
No.3253 Banned Product
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2025-09-05 22:20:13 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
TLE
|
| 実行時間 | - |
| コード長 | 557 bytes |
| コンパイル時間 | 324 ms |
| コンパイル使用メモリ | 82,472 KB |
| 実行使用メモリ | 316,024 KB |
| 最終ジャッジ日時 | 2025-09-05 22:20:57 |
| 合計ジャッジ時間 | 7,554 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 1 |
| other | TLE * 1 -- * 8 |
ソースコード
from math import*
from bisect import*
t=int(input())
N=100000
spf=[0]*(N+1)
prime=[]
for m in range(2,N+1):
if spf[m]<1:spf[m]=m;prime+=[m]
for p in prime:
if p>spf[m] or p*m>N:break
spf[p*m]=p
for _ in range(t):
n,k=map(int,input().split())
ans=-1
i=isqrt(n)
if k<i:
print(i*i)
continue
m=10**7
s=[1]*m
for i in prime:
j=max(k//i,2)*i
if j<=k:
j+=i
while j<k+m:
s[j-k]=0
j+=i
for i in range(1,m):
if s[i]:
a=i+k
b=n//a
if 1<=a and 1<=b:
ans=max(ans,a*b)
print(ans)