设蓝色碟片和红色碟片的数量分别为$n,m$,简单化简之后即求一个丢番图方程的满足$n+m>10^{12}$的解。
设蓝色碟片和红色碟片的数量分别为$n,m$,得
$$\dfrac{n}{n+m} \times \dfrac{n-1}{n+m-1} = \dfrac{1}{2}$$
即求
$$
\begin{align}
& 2n(n-1) = (n+m)(n+m-1) \
\Rightarrow & n^2 - m^2 + 2nm - n - m = 0 \
\Rightarrow & n^2 + (2m-1)n - m^2 - m = 0
\end{align}
$$
的满足$n+m>10^{12}$的解
考虑$n$为变量,对应的
$$
\begin{align}
\triangle&=(2m-1)^2 + 4(m^2 + m) \
&=8m^2 + 1
\end{align}
$$
对应的解为
$$
n = \dfrac{2m+1 \pm \sqrt{8m^2 + 1}}{2}
$$
因为要求整数解,那么$\triangle$必须是一个平方数, 如果设$\triangle=t^2$, $\triangle$对应的恰为一个佩尔方程:
$$
t^2-8m^2=1
$$
显然其有一组解$t=3, n=1$且为最小解
关于佩尔方程$x^2-Dy^2=1$的一个定理:如果$(x_1, y_1)$是佩尔方程的最小解,则每个解都可以取幂得到,即:
$$
\begin{align}
& x_k+\sqrt{D}y_k=(x_1+\sqrt{D}y_1)^k(k\in N_+) \
\Rightarrow & x_{k+1}+\sqrt{D}y_{k+1}=(x_k+\sqrt{D}y_k)(x_1+\sqrt{D}y_1) (k\in N_+) \
\Rightarrow & x_{k+1}+\sqrt{D}y_{k+1}=(x_1x_k+Dy_1y_k)+(y_1x_k+x_1y_k)\sqrt{D}
\end{align}
$$
对于PE100这道题其实到这里就结束了,虽然要求的是高于$10^{12}$次方的解,但是上述递推式的增长速度是非常快的,只需要暴力递推,枚举$t$和$n$的值并暴力检验即可。
补充内容:
$Trivially$,若要求解第$k$个解时,可以构造矩阵并利用矩阵快速幂来计算。
另外一个需要注意的是关于最小解的求解办法
一个很自然的想法就是暴力枚举其中一个变量的值……然后代入验证
题目