結果
問題 | No.1529 Constant Lcm |
ユーザー |
![]() |
提出日時 | 2021-06-04 20:20:21 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 1,412 ms / 3,000 ms |
コード長 | 995 bytes |
コンパイル時間 | 365 ms |
コンパイル使用メモリ | 82,660 KB |
実行使用メモリ | 196,360 KB |
最終ジャッジ日時 | 2024-11-19 08:43:55 |
合計ジャッジ時間 | 15,619 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 24 |
ソースコード
def primes(n):is_prime = [True] * (n + 1)is_prime[0] = Falseis_prime[1] = Falsefor i in range(2, int(n**0.5) + 1):if not is_prime[i]:continuefor j in range(i * 2, n + 1, i):is_prime[j] = Falsereturn [i for i in range(n + 1) if is_prime[i]]N=int(input())mod=998244353L=primes(N-1)R=[0]*N#コーナーに気をつけてK=[list() for i in range(N)]for i in range(len(L)):s=L[i]for j in range(s,N,s):K[j].append(s)for i in range(1,N):a=ib=N-iif a>b:breakx=dict()a2=ab2=bfor j in range(len(K[a])):s=K[a][j]this=0while a2%s==0:a2//=sthis+=1if s in x:x[s]+=thiselse:x[s]=thisfor j in range(len(K[b])):s=K[b][j]this=0while b2%s==0:b2//=sthis+=1if s in x:x[s]+=thiselse:x[s]=thisfor i in x:R[i]=max(R[i],x[i])ans=1for i in L:ans*=pow(i,R[i],mod)ans%=modprint(ans)