#author("2021-11-02T15:39:19+00:00","","")
*[[Problem 288:http://projecteuler.net/problem=288]] 「巨大階乗」 [#o8f05ec8]

任意の素数 p に対し N(p,q) = Σ&sub{n=0 to q}; T&sub{n};*p&sup{n}; とする. ~
T&sub{n}; は以下の乱数生成器で生成する:
任意の素数 &tex{p}; に対し N(&tex{p,q};) = Σ&tex{{}_{n=0 to q}}; T&tex{{}_{n}};* &tex{p^{n}}; とする. ~
T&tex{{}_{n}}; は以下の乱数生成器で生成する:

S&sub{0}; = 290797~
S&sub{n+1}; = S&sub{n};&sup{2}; mod 50515093~
T&sub{n}; = S&sub{n}; mod p 
S&tex{{}_{0}}; = 290797~
S&tex{{}_{n+1}}; = S&tex{{}_{n}^{2}}; mod 50515093~
T&tex{{}_{n}}; = S&tex{{}_{n}}; mod &tex{p}; 

Nfac(p,q) を N(p,q) の階乗とする. ~
NF(p,q) を Nfac(p,q) 内の因数 p の数とする.
Nfac(&tex{p,q};) を N(&tex{p,q};) の階乗とする. ~
NF(&tex{p,q};) を Nfac(&tex{p,q};) 内の因数 &tex{p}; の数とする.

NF(3,10000) mod 3&sup{20};=624955285 であることがわかる.
NF(3,10000) mod &tex{3^{20}};=624955285 であることがわかる.

NF(61,10&sup{7};) mod 61&sup{10}; を求めよ.
NF(61,&tex{10^{7}};) mod &tex{61^{10}}; を求めよ.


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS