結果
問題 | No.2798 Multiple Chain |
ユーザー |
👑 |
提出日時 | 2024-10-19 15:51:05 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 631 ms / 2,000 ms |
コード長 | 630 bytes |
コンパイル時間 | 617 ms |
コンパイル使用メモリ | 82,468 KB |
実行使用メモリ | 76,448 KB |
最終ジャッジ日時 | 2024-10-19 15:51:14 |
合計ジャッジ時間 | 7,682 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 51 |
ソースコード
R=rangen=int(input())P,t=set(),nfor i in R(2,min(n+1,9**4)):if t%i<1:P.add(i)while t%i<1:t//=iD=[t]*(t>1)def G(a,b):while a:a,b=b%a,areturn bwhile D:t=D.pop()c=int(t**0.25)*9if t<9**8:P.add(t)else:while c:x,d=c,1y=(x*x+1)%twhile(d<2)*c:x,y,d,c=(x*x+1)%t,(y**4+2*y*y+2)%t,G(abs(x-y),t),c-1if d<t and c:t//=d;c=G(t,d);D+=[t//c,d//c,c];breakelse:P.add(t)P.discard(1)P=list(P)for i in R(len(P)):p,c=P[i],0while n%p<1:n//=p;c+=1P[i]=[p,c]D=[[i==j for j in R(65)]for i in R(65)]for i in R(65):for j in R(i-1,-1,-1):D[i][j]=D[i][j+1]+D[i-j][j]a=1for[p,c]in P:a*=D[c][1]print(a)