当前位置: 首页 > news >正文

奥林匹克小丛书小蓝本习题另解或加强(数论卷)(一)

最近因为带着几个才开始学竞赛的初中小孩刷这个小蓝本的题目,但是小蓝本的标答又不爱说人话或者总感觉还有其他应该学习的解法并没有收录在内,一并记录在此,除了标答外的方法均是贴主自行思考得到,转载请注明来源。

第一节例7

任给 n \geqslant 2 ,证明:存在 n 个互不相同的正整数,其中任意两个的和,整除这 n 个数的积.

标答: 我们任取 n 个互不相同的正整数 a_1, \cdots, a_n ,并选取一个(正整数)参数 K ,希望 K a_1, \cdots, K a_n 的积 K^n a_1 \cdots a_n 被任意两项的和 K a_i+K a_j 整除 (1 \leqslant i, j \leqslant n, i \neq j) .由于 n \geqslant 2 ,显然,取

K=\prod_{1\leq i< j\leq n}\left(a_i+a_j\right)
\\

即符合要求(注意 K a_1, \cdots, K a_n 互不相同)\quad \square

实际上对新接触这块的学生来说,这个解法不是那么容易想到的,作为教学,可以先介绍点容易接受的办法。

以下这个解法如果注意到 n=2 情形,然后直接构造是容易的.

解 :n=2:\quad 5 \times 4 \quad 5 n=3: \quad 5 \times 4\quad 5 \times 4 \quad 5 \times 4 \times 4 n=4:\quad 5 \times 4 \quad 5 \times 4 \quad 5 \times 4 \quad 5 \times 4 \times 4 \cdots \cdots\quad \square

第一节习题4

n 个整数具有下述性质:其中任意 n-1 个数之积与剩下那个数的差都能被 n 整除.证明:这 n 个数的平方和也能被 n 整除.

标答:设 a_1, \cdots, a_n 是具有所说性质的整数,A 是它们的积,对于 1 \leqslant i \leqslant n ,数 n 整除 \frac{A}{a_i}-a_i ,因而能整除

a_i\left(\frac{A}{a_i}-a_i\right)=A-a_i^2
\\

n 整除这些数的和 \left(A-a_1^2\right)+\cdots+\left(A-a_n^2\right)=n A-\left(a_1^2+\cdots+a_n^2\right) .从而 n 整除 a_1^2+\cdots+a_n^2.\quad \square

才接触这些内容的学生大局观以及对代数式的把握能力没有那么强,可能会有如下慢慢凑的解法:

解: \begin{aligned}  & \left(a_1 a_2-a_3\right)^2+\left(a_2 a_3-a_1\right)^2+\left(a_1 a_3-a_2\right)^2 \\ = & a_1^2+a_2^2+a_3^2-3 a_1 a_2 a_3+a_1 a_3\left(a_1 a_2-a_3\right) \\ & +a_2 a_3\left(a_2 a_3-a_1\right)+a_1 a_3\left(a_1 a_3-a_2\right)\end{aligned}

而且容易看出来这种配凑对 n 更大的情况也是成立的。\quad \square

第二节习题2

说句题外话,小蓝本果然不适合当讲义或者教材,连辗转相除欧几里得算法这些最基本的都不讲,有些同学上来听说这玩意出名(有句竞赛圈名言是如果小蓝本都刷不明白就不用参加竞赛了,不过我是极度不认同这种东话的,只要学的够多总有熟练和品出乐趣的一天,不能因为别人一年拿牌子就要求自己也做到,找到兴趣找到那种打怪升级数学能力正在提升的感觉才是最重要的。)就抱着刷,刷不懂其实不是你们的问题。

m 、 n 都是正整数,m 是奇数,证明:\left(2^m-1,2^n+1\right)=1

标答:设 d=\left(2^m-1,2^n+1\right) .则 2^m-1=d u, 2^n+1=d v ,这里 u 、 v 为整数.易知 (d u+1)^n=(d v-1)^m ,将两端展开(注意 m 为奇数),得到 d A+ 1=d B-1A 、 B 为某两个整数),由此可知 d \mid 2 ,即 d=12 .但显然 d 只能是 1\quad \square

这个解答还是太简短了,利用原根与指数的思想设个指数(阶数)然后利用指数的性质暴力干出来。

解:

\begin{aligned}
<p>& 2^m \equiv 1(\bmod d) \<br>
& 2^n \equiv-1(\bmod d)\Rightarrow 2^{2 n} \equiv 1(\bmod d)<br>
\end{aligned}<br>
\"></span></p>
<p data-tool=k 是 2 模 d 的阶 则 k \mid mk \mid 2 n \Rightarrow k 是奇数且 k \mid n

可设 n=k q2^{k q} \equiv-1(\bmod d)

\left(2^k\right)^q \equiv-1(\bmod d)

1 \equiv-1(\bmod d) \Rightarrow d \mid 2d 奇数,故 d=1。\quad \square

还可以像之前的例题一样用裴蜀定理做,不过这里直接拿 2^m-12^n+1 似乎不是很好凑或者凑不出啥有用的东西。

4+\left(2^m-1\right)\left(2^n+1\right)+\left(2^m+1\right)\left(2^n-1\right)=2^{m+n+1}+2
\\ \left(2^m+1\right)\left(2^n+1\right)-\left(2^m-1\right)\left(2^n-1\right)=2^{m+1}+2^{n+1}
\\ \Rightarrow d \mid 2^{m+n+1}+2 \text { 且 } d \mid 2^{m+1}+2^{n+1}
\\ \Rightarrow d \mid 2^{m+n}+1 \text{ 且 } d \mid 2^m+2^n\\ (其实这是句废话,而且好像也做不下去了。)

那么如何正确使用裴蜀解决这个问题呢?

解:

\begin{aligned} & \text { 记 } d=\left(2^n+1,2^m-1\right) \text { 则 } \\ & d \mid \left(2^{2 n}-1,2^m-1\right)=2^{(m, 2 n)}-1=2^{(m, n)}-1 \\ & \text { 设 } g=(m, n) \text { 且 } n=g k \text {, 则 } 2^d \equiv 1(\text { mod d }) \text{ 而 } 2^{g k} \equiv-1(\text { mod d }) \\ & \Rightarrow d=1 \quad \square\end{aligned}\\

第二节习题5

m 、 n 、 k 都是正整数,满足 [m+k, m]=[n+k, n] ,证明:m=n

标答:已知条件即为

\frac{(m+k) m}{(m+k, m)}=\frac{(n+k) n}{(n+k, n)}
\\

由于 (m+k, m)=(m, k),(n+k, n)=(n, k) ,故由上式得

\frac{(m+k) m}{(m, k)}=\frac{(n+k) n}{(n, k)}\text{(式1)}
\\

我们设 (m, k)=d_1 ,则 m=m_1 d_1, k=k_1 d_1 ,其中 \left(m_1, k_1\right)=1 . 再设 (n, k)=d_2 ,则 n=n_1 d_2, k=k_2 d_2 ,其中 \left(n_1, k_2\right)=1 .于是等式(1)化为

\left(m_1+k_1\right) m_1 d_1=\left(n_1+k_2\right) n_1 d_2
\\

将上式两边同乘 k_1 ,并利用 k_1 d_1=k_2 d_2(=k) ,可得出

\left(m_1+k_1\right) m_1 k_2=\left(n_1+k_2\right) n_1 k_1
\\

上式左边是 k_2 的倍数,故 k_2 也整除右边,即 k_2 \mid k_1 n_1^2 。但 \left(k_2, n_1\right)=1 ,故( k_2,n_1^2)=1 ,从而有 k_2 \mid k_1 。同样可证明 k_1 \mid k_2 。综合起来得到 k_1=k_2 ,即 (m, k)= (n, k) .故 (m+k) m=(n+k) n ,由此易知 m=n\quad \square

标答当然简便,但是做这种最大公约数最小公倍数等式的问题,不要忘了我们还有一个暴力的办法————P进分析(也叫 p—adic valuation)。

简而言之,P进分析就是通过证明对于任意素数 p, mnp 因子幂次都相等,来证明 m=n

v_p(x) 表示正整数 x 的素因子分解中素数 p 的指数。例如,v_2(12)=2, v_3(12)=1 。如果对于所有的素数 p 都有 v_p(m)=v_p(n) ,那么 m=n

我们需要用到 p——adic valuation 的以下重要性质(非常容易证明):

  • 如果 v_p(x)< v_p(y) ,则 v_p(x+y)=v_p(x)
  • 如果 v_p(x)> v_p(y) ,则 v_p(x+y)=v_p(y)
  • 如果 v_p(x)= v_p(y) ,则 v_p(x+y) \geq v_p(x)
  • v_p(x\cdot y)=v_p(x)+v_p(y)
  • v_p((a, b))=\min \left(v_p(a), v_p(b)\right)

解: 我们将等式 (n, k) \cdot m(m+k)=(m, k) \cdot n(n+k) 转换为以下形式(取任意素数 p

v_p((n, k))+v_p(m)+v_p(m+k)=v_p((m, k))+v_p(n)+v_p(n+k)\text{(方程*)}
\\

不妨设 \alpha\overset{\triangle}{=}v_p(m)>v_p(n)\overset{\triangle}{=}\beta 并记 v_p(k)=\gamma

情况 1:\gamma < \beta\gamma < \beta<\alpha

此时方程(*)计算后如下

\alpha-\beta=(\gamma-\gamma)+(\gamma-\gamma)=0\Rightarrow \alpha=\beta
\\

与假设矛盾。

情况2:\beta<\gamma<\alpha

情况3:\alpha \leq \gamma

同样的过程容易知道情况2和情况3也会得到矛盾。

关键问题是 \gamma=\beta 的时候怎么办,按上述套路我们发现这种情况得不到矛盾。(主要是因为上面介绍的p进赋值的第三条性质。)

经过仔细的分析过后可以发现,我们不必一来就假设 \alpha>\beta,我们可以先假设 min(\alpha,\gamma)\neq min(\beta,\gamma),然后自然得到 \alpha \neq \beta,然后自然不妨设 \alpha > \beta,这样其他情况依然照旧可以推出矛盾,而 \gamma=\beta 的情况就会推出 min(\alpha,\gamma)= min(\beta,\gamma) 从而与假设矛盾。

经过以上分析我们便得知,对所有的素数 pv_p(m,k)=v_p(n,k),从而 (m,k)=(n,k),从而  m(m+k)= n(n+k)\Rightarrow (m-n)(m+n+k)=0\Rightarrow m=n。\\

\square

http://www.aitangshan.cn/news/452.html

相关文章:

  • 关于磁盘io性能的命令
  • 房屋防水是建筑工程中非常重要的一部分,通常需要根据不同的环境、建筑结构和使用需求来采取相应的防水措施。国家标准对防水工程的要求有详细规定,以下是常见的防水相关国家标准和要求:
  • Hulo 编程语言开发 —— 从源代码到 AST 的魔法转换
  • python中enumerate的作用
  • ly-容斥杂题选讲
  • 前向传播 反向传播
  • Attention 显存计算 推理训练复杂度
  • NLP随记
  • RL 随记
  • top命令详解
  • 2025杭电暑期(8) 最努力的活着 推式子
  • 从输入网址到看到页面:一段看不见的旅程
  • 牛客周赛109补题
  • stress命令详解
  • Nvidia Proprietary GPU Drivers
  • dd命令生成文件详解
  • 关于PVC排水管系统中存水弯设计的常见类型分类表格:
  • 一个好点子,但是我克制住了
  • 软考系统分析师每日学习卡 | [日期:2025-08-11] | [今日主题:数据库设计过程-概念结构设计阶段]
  • 2025年8月11日
  • 基于AOA算术优化的KNN数据聚类算法matlab仿真
  • strace命令
  • 基于最优转子磁链混合效率优化控制和铁损补偿的PMSM控制系统simulink建模与仿真
  • python中raise的用法
  • alias命令
  • 口播
  • nmap命令
  • CSP-J/S 2024 游记
  • PyTorch 的深度学习验证码识别实践
  • 深度学习的验证码识别系统实现