CF225E Unsolvable
Link
题目描述
求所有使方程
\[z=\lfloor\frac{x}{2}\rfloor+y+xy
\]
不存在正整数解 \((x,y)\) 的 \(z\) 中,第 \(n\) 小的 \(z\) ,结果对 \(10^9+7\) 取模
解法
向下取整不好搞,所以想到分奇偶讨论把向下取整去掉。
- 若 \(x\) 是奇数,令 \(x=2k+1\)。则
\[z=k+2y+2ky
\]
试图化简
\[z+1=(k+1)(2y+1)
\]
其中,\(k\) 取遍自然数,\(y\) 取遍正整数,那么 \(k+1\) 取遍所有大于等于 \(1\) 的正整数,\(2y+1\) 取遍所有大于等于 \(3\) 的奇数。这个式子就说明了若 \(z+1\) 能分解出一个大于 \(1\) 的奇数,那么 \(z\) 就肯定不满足条件。所以 \(z+1\) 只能是一个 \(2\) 的次幂。我们表示为
\[z+1=2^r
\]
其中 \(r\) 为某个正整数。
2. 若 \(x\) 是偶数,令\(x=2k\)。则
\[z=k+y+2ky
\]
同上,分解因式
\[2z+1=(2k+1)(2y+1)=(x+1)(2y+1)
\]
其中 \(x+1\) 和 \(2y+1\) 均为大于等于 \(3\) 的奇数。上述式子说明了如果 \(2z+1\) 能写成两个大于等于 \(3\) 的奇数,那么 \(2z+1\) 就不符合条件。而 \(2z+1\) 本来就为一个奇数,若可以分解那么一定是两个奇数相乘。综上 \(2z+1\) 一定为一个奇素数。表示为
\[2z+1=p
\]
综合上述两条
\[\begin{cases}
z+1=2^r \\
2z+1=p
\end{cases}\]
合并得
\[2z+1=2^{r+1}-1=p
\]
那么可以看出,\(z\) 便是所有 \(2z+1\) 是梅森素数时的值。
然后就可以从某 OEIS 复制一下数列,然后打表输出。