　条件を上から $1,2$ とする．また，$N=60^9,M=110^{18}$ とおく．
<details>
<summary>条件おさらい<\/summary>
　**1．** 任意の整数 $x$ に対して $f(x+M) = f(x)$  
　**2．** 任意の整数 $x,y,z$ に対して，$f(x+yz)-f(x)-f(y)f(z)$ は $N$ で割り切れる．  
<\/details>    
　以下，$f$ の値域では**等号を $N$ で割った余りで考える**．条件 $2$ は任意の整数の組 $x,y,z$ に対して，
$$
f(x+yz)=f(x)+f(y)f(z)
$$
が成立することと言い換えられる．この式に $x=a,y=b,z=c$ を代入することを $P(a,b,c)$ と表すことにする．また，$d=f(1)$ とおく．\
　任意の整数 $n$ について，$P(n,1,1)$ より，
$$
f(n+1)=f(n)+d^2
$$
となる．また，$n=0$ として，
$$
d=f(0)+d^2
\iff f(0)=d-d^2
$$
となる．よって，任意の整数 $n$ に対して，
$$
f(n)=d^2n+f(0)=d^2n+d-d^2
$$
となる．一方で，$P(1,0,1)$ より，
$$
f(1)=f(1)+f(0)f(1) 
\iff f(1)f(0)=0
$$
となるため，
$$
d^2(d-1)=d(d^2-d)=-f(1)f(0)=0
$$
を得る．ここで逆に $d^2(d-1)$ が $N$ で割り切れるような $d$ に対して，$f(x)=d+d^2(x-1)$ とおくと，
$$
\begin{aligned}
f(x+yz)-f(x)-f(y)f(z) &= d^2yz - (d + d^2(y-1))(d + d^2(z-1)) \\\\
&= d^2 (yz - 1 - d(y+z-2) - d^2(y-1)(z-1)) \\\\
&= d^2 (yz - 1 - (y+z-2) - (y-1)(z-1)) \\\\
&= 0
\end{aligned}
$$
となるため，条件 $2$ の式が満たされることが示される．したがって，そのような $d$ ごとに関数が一意に定まる．  
　ここで，条件 $1$ について考察する．$f(x+M)=f(x)$ から，
$$
d^2(x+M)-d^2+d=d^2x-d^2+d 
$$
より $Md^2=0$ が同値な条件となる．\
　以上の議論をまとめると，$d^2(d-1)$ および $Md^2$ が $N$ で割り切れるような $0\leq d\lt N$ の個数を求めればよい．\
　$Md^2 = 11^{18}2^{18}5^{18}d^2$ が $N=2^{18}3^95^9$ で割り切れるので，$d$ は $3^5$ の倍数である．また，$d$ と $d-1$ は互いに素なので，$d^2$ と $d-1$ は互いに素である．よって，その積が $N=2^{18}3^95^9$ で割り切れることと合わせると，$d^2$ は $2^a3^95^b$ の倍数で，$d-1$ が $2^{18-a}5^{9-b}$ の倍数（ただし，$a$ は $0$ または $18$，$b$ は $0$ または $9$）になる．このとき，$d$ は $2^x3^55^y\quad (x=\lfloor\frac{a+1}{2}\rfloor,y=\lfloor\frac{b+1}{2}\rfloor)$ の倍数となる．ここで，$a,b$ を固定したときに，
$$
\begin{aligned}
d &\equiv 0 \pmod{2^x3^55^y}\\\\
d &\equiv 1 \pmod{2^{18-a}5^{9-b}}
\end{aligned}
$$
という二つの条件を満たす $0\leq d \lt N=2^{18}3^95^9$ の個数を考える．一つ目の条件で $d$ としてありうるものが $2^{18-x}3^{4}5^{9-y}$ 個ある．また，$2^x3^55^y$ と $2^{18-a}5^{9-b}$ は互いに素であるため，二つ目の条件も満たす $d$ の個数は中国剰余定理により，$2^{18-x}3^45^{9-y} \div 2^{18-a}5^{9-b} = 2^{a-x}3^{4}5^{b-y}$ 個である．異なる $a,b$ に対しては，$d$ の剰余の条件を考えることで，同じ $d$ となることはないので，求める個数は
$$
3^4(1+2^9)(1+5^4) = 81\cdot 513 \cdot 626 = \mathbf{26012178}
$$
となる．
公式解説
https://onlinemathcontest.com/contests/omc219/editorial/10460
　整数に対して定義され，$0$ 以上 $60^9$ 未満の整数値を取る関数 $f$ であって，以下をすべて満たすものの個数を求めてください．
- 任意の整数 $x$ に対して $f(x+110^{18}) = f(x)$ が成り立つ．
- 任意の整数 $x,y,z$ に対して，$f(x+yz)-f(x)-f(y)f(z)$ は $60^9$ で割り切れる．