NJU 2022 计算机拔尖(数学)测试 解题报告
难度很大,只会两道。
1
题意 对于一个大于 1 1 1 的正整数 n n n,将它所有的因数排成一个环,使得每两个数之间仅差某个质数倍(即一个是 x x x 一个是 p x px px,其中 p p p 是一个质数)。问对哪些 n n n 可以做到?
解答 (来自 tzh 佬)对于 n = p 1 α 1 p 2 α 2 ⋯ p s α s n=p_1^{\alpha_1}p_2^{\alpha_2}\cdots p_s^{\alpha_s} n=p1α1p2α2⋯psαs,容易得到因数个数 d = ( α 1 + 1 ) ( α 2 + 1 ) ⋯ ( α s + 1 ) d=(\alpha_1+1)(\alpha_2+1)\cdots(\alpha_s+1) d=(α1+1)(α2+1)⋯(αs+1)。
把这 d d d 个数围成一圈,记为 a 1 , a 2 , ⋯ a d a_1,a_2,\cdots a_d a1,a2,⋯ad。则 a i a_i ai 和 a i + 1 a_{i+1} ai+1(认为下标循环)差奇数个质因子。循环一圈后,可知 a 1 a_1 a1 差与 d d d 奇偶性相同个质因子。故 d d d 为偶数。则必须存在 1 ≤ i ≤ s , α i 1\le i\le s,\alpha_i 1≤i≤s,αi 为奇数。
下面我们进行归纳证明:
容易发现,若 s = 1 s=1 s=1 即 n = p 1 s 1 n=p_1^{s_1} n=p1s1,当且仅当 s 1 = 1 s_1=1 s1=1 符合题意。
若 s = 2 s=2 s=2,即 n = p 2 s − 1 q t ( s , t ∈ N ∗ ) n=p^{2s-1}q^t(s,t\in\mathbb N^*) n=p2s−1qt(s,t∈N∗),用二元对 ( i , j ) , 0 ≤ i ≤ 2 s − 1 , 0 ≤ j ≤ t (i,j),0\le i\le 2s-1,0\le j\le t (i,j),0≤i≤2s−1,0≤j≤t 表示 p i q j p^iq^j piqj。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zd4thwys-1661354433718)(pic1.jpg)]
使用这样的策略即可完成一圈。
下面,若 m m m 满足题意,下面证明 p k ⋅ m p^k\cdot m pk⋅m (其中 p ⊥ m p\perp m p⊥m)满足题意。
容易知道 σ 0 ( m ) = 2 t \sigma_0(m)=2t σ0(m)=2t,设 m m m 的排列为 a 1 , a 2 ⋯ , a 2 t a_1,a_2\cdots,a_{2t} a1,a2⋯,a2t,对于所有的 1 ≤ i ≤ t 1\le i\le t 1≤i≤t,在 a 2 i − 1 a_{2i-1} a2i−1 和 a 2 i a_{2i} a2i 之间插入 a 2 i − 1 p , a 2 i − 1 p 2 , ⋯ , a 2 i − 1 p k , a 2 i p k , a 2 i p k − 1 , ⋯ , a 2 i p a_{2i-1}p,a_{2i-1}p^2,\cdots,a_{2i-1}p^k,a_{2i}p^k,a_{2i}p^{k-1},\cdots,a_{2i}p a2i−1p,a2i−1p2,⋯,a2i−1pk,a2ipk,a2ipk−1,⋯,a2ip,即可满足题意。
故可归纳证明,当且仅当 n = p 1 α 1 p 2 α 2 ⋯ p s α s n=p_1^{\alpha_1}p_2^{\alpha_2}\cdots p_{s}^{\alpha_s} n=p1α1p2α2⋯psαs 满足以下条件之一时, n n n 满足题意:
- s = 1 s=1 s=1 且 α 1 = 1 \alpha_1=1 α1=1;
- s ≥ 2 s\ge 2 s≥2,且存在 1 ≤ i ≤ s 1\le i\le s 1≤i≤s, α i \alpha_i αi 为奇数。
思路 考虑简单的情况,然后进行归纳证明。
2
题意 一个函数 f f f,定义域是整数集,取值也是整数。已知对所有 x , y ∈ Z x,y\in\mathbb Z x,y∈Z,有 f ( x − f ( y ) ) = f ( f ( x ) ) − f ( y ) − 1 f(x-f(y)) = f(f(x)) - f(y) - 1 f(x−f(y))=f(f(x))−f(y)−1,且 f ( 1 ) , f ( 2 ) f(1),f(2) f(1),f(2) 都不为 f f f 最大值,求所有满足条件的 f f f。
解答 首先我们先试一试一次函数。
尝试 f ( n ) = k n + b f(n)=kn+b f(n)=kn+b 是否符合条件。展开原式可得
f ( x − k y − b ) = f ( k x + b ) − k y − b − 1 k x − k 2 y − k b + b = k 2 x + k b + b − k y − b − 1 ( k − k 2 ) x + ( k − k 2 ) y = 2 k b − b − 1 \begin{aligned} f(x-ky-b)=&f(kx+b)-ky-b-1 \\ kx-k^2y-kb+b=&k^2x+kb+b-ky-b-1 \\ (k-k^2)x+(k-k^2)y=&2kb-b-1 \end{aligned} f(x−ky−b)=kx−k2y−kb+b=(k−k2)x+(k−k2)y=f(kx+b)−ky−b−1k2x+kb+b−ky−b−12kb−b−1
于是
{ k − k 2 = 0 2 k b − b − 1 = 0 \begin{cases} k-k^2=0\\ 2kb-b-1=0 \end{cases} {k−k2=02kb−b−1=0
故
{
k
=
0
b
=
−
1
或
{
k
=
1
b
=
1
\begin{cases} k=0 \\ b=-1 \end{cases} \textnormal{或} \begin{cases} k=1\\ b=1 \end{cases}
{k=0b=−1或{k=1b=1
于是 f ( n ) = − 1 f(n)=-1 f(n)=−1 或 f ( n ) = n + 1 f(n)=n+1 f(n)=n+1
由于 f ( 1 ) , f ( 2 ) f(1),f(2) f(1),f(2) 都不是最大值,所以仅有 f ( n ) = n + 1 f(n)=n+1 f(n)=n+1。
(以上都是猜测)
下面来严格证明仅有 f ( n ) = n + 1 f(n)=n+1 f(n)=n+1 符合题意。
设 g ( n ) = n + 1 − f ( n ) g(n)=n+1-f(n) g(n)=n+1−f(n),则 f ( n ) = n + 1 − g ( n ) f(n)=n+1-g(n) f(n)=n+1−g(n)。代入原式化简有
f ( x − f ( y ) ) = f ( f ( x ) ) − f ( y ) − 1 f ( x − y − 1 + g ( y ) ) = f ( x + 1 − g ( x ) ) − y − 1 + g ( y ) − 1 x − y − 1 + g ( y ) + 1 − g ( x − y − 1 + g ( y ) ) = x + 1 − g ( x ) + 1 − g ( x + 1 − g ( x ) ) − y − 1 + g ( y ) − 1 g ( x − y − 1 + g ( y ) ) = g ( x ) + g ( x + 1 − g ( x ) ) \begin{aligned} f(x-f(y))=&f(f(x))-f(y)-1 \\ f(x-y-1+g(y))=&f(x+1-g(x))-y-1+g(y)-1 \\ x-y-1+g(y)+1-g(x-y-1+g(y))=&x+1-g(x)+1-g(x+1-g(x))-y-1+g(y)-1 \\ g(x-y-1+g(y))=&g(x)+g(x+1-g(x)) \end{aligned} f(x−f(y))=f(x−y−1+g(y))=x−y−1+g(y)+1−g(x−y−1+g(y))=g(x−y−1+g(y))=f(f(x))−f(y)−1f(x+1−g(x))−y−1+g(y)−1x+1−g(x)+1−g(x+1−g(x))−y−1+g(y)−1g(x)+g(x+1−g(x))
- 若 g ( n ) g(n) g(n) 恒等于一个常数,即恒等于 0 0 0,符合题意,求得 f ( n ) = n + 1 f(n)=n+1 f(n)=n+1;
- 若 g ( n ) g(n) g(n) 不恒等于一个常数,则发现上式随着 y y y 的变化等式恒成立,则 g ( y ) − y − 1 = c g(y)-y-1=c g(y)−@H_976_4404@y−1=c, g ( n ) = n + 1 + c g(n)=n+1+c g(n)=n+1+c, f ( n ) = − c f(n)=-c f(n)=−c,容易推得 f ( n ) = − 1 f(n)=-1 f(n)=−1,不合题意。
综上,满足条件的 f ( n ) f(n) f(n) 仅有 f ( n ) = n + 1 f(n)=n+1 f(n)=n+1。
思路 大胆猜想,小心求证。
3
题意 设 S n = 1 ! + 2 ! + ⋯ + n ! S_n=1!+2!+\cdots +n! Sn=1!+2!+⋯+n!, P P P 为满足 p p p 是素数,且存在 n ∈ N ∗ n\in \mathbb N^* n∈N∗ 使得 p ∣ S n p\mid S_n p∣Sn 的 p p p 的集合,求证 P P P 是无限集。
解答
这题听说是 RMO 2012 的一道陈题的改编题。谁做得出来啊。
用 v p ( n ) v_p(n) vp(n) 表示 n n n 的分解式中素数 p p p 的幂次。
当 v p ( n ) ≠ v p ( k ) v_p(n)\ne v_p(k) vp(n)@H_422_5020@@H_164_5026@=vp(k),则 v p ( n ± k ) = min { v p ( n ) , v p ( k ) } v_p(n\pm k)=\min\{v_p(n),v_p(k)\} vp(n±k)=min{vp(n),vp(k)}。
引理:如哦存在对于某个正整数 n n n 满足 v p ( S n ) < v p ( ( n + 1 ) ! ) v_p(S_n)<v_p((n+1)!) vp(Sn)<vp((n+1)!),则对任意 k ≥ n k\ge n k≥n,有 v p ( S k ) = v p ( S n ) v_p(S_k)=v_p(S_n) vp(Sk)=vp(Sn)。
反设 P P P 有上界 K K K,则对任意正整数 n n n, S n S_n Sn 的所有质因子均小于 K K K。
对于任意素数 p < K p<K p<K,如果存在某个正整数 m m m,使得 v p ( S m ) < v p ( ( m + 1 ) ! ) v_p(S_m)<v_p((m+1)!) vp(Sm)<vp((m+1)!),即根据引理,存在 H p H_p Hp,使得 v p ( S n ) ≤ H p , n ≥ 1 v_p(S_n)\le H_p,n\ge 1 vp(Sn)≤Hp,n≥1 ,那么称 p p p 为“小素数”;否则称这样的 p < K p<K p<K 为“大素数”。
取定正整数 M M M,使得不等式 M > p H p M>p^{H_p} M>pHp 对任意小素数成立。
对任意一个大素数 p p p,如果 n + 2 n+2 n+2 是 p p p 的倍数,则由引理,
v p ( S n + 1 ) ≥ v p ( ( n + 2 ) ! ) > v p ( ( n + 1 ) ! ) v_p(S_{n+1})\ge v_p((n+2)!)>v_p((n+1)!) vp(Sn+1)≥vp((n+2)!)>vp((n+1)!)
这推出(注意到 2 2 2 显然是小素数)
v p ( S n ) = v p ( S n + 1 − ( n + 1 ) ! ) = v p ( ( n + 1 ) ! ) = v p ( n ! ) v_p(S_n)=v_p(S_{n+1}-(n+1)!)=v_p((n+1)!)=v_p(n!) vp(Sn)=vp(Sn+1−(n+1)!)=vp((n+1)!)=vp(n!)
令 N = M K ! − 2 N=MK!-2 N=MK!−2,则上述论证表明 v p ( S N ) = v p ( N ! ) v_p(S_N)=v_p(N!) vp(SN)=vp(N!) 对任意大素数 p p p 成立。又因为 N ≥ K N\ge K N≥K,对小素数来说 v p ( S N ) ≤ v p ( p H p ) ≤ v p ( N ! ) v_p(S_N)\le v_p(p^{H_p})\le v_p(N!) vp(SN)≤vp(pHp)≤vp(N!),而 S N S_N SN 所有的素因子不是小素数就是大素数,这表明 S N ≤ N ! S_N\le N! SN≤N!,矛盾。
思路 玄之又玄。
4
题意 两个数组 A [ 0 ⋯ 2022 ] , B [ 0 ⋯ 2022 ] A[0\cdots 2022],B[0\cdots 2022] A[0⋯2022],B[0⋯2022],各有 2023 2023 2023 个元素。 A [ i ] , B [ i ] A[i],B[i] A[i],B[i] 取值均为自然数。如果 A A A 中恰有 k k k 个数等于 v v v,则 B [ v ] = k B[v]=k B[v]=k;如果 B B B 中恰有 k k k 个数等于 v v v,则 A [ v ] = k A[v]=k A[v]=k。已知 A [ 0 ] < B [ 0 ] A[0]<B[0] A[0]<B[0],求证 A [ 2020 ] = 1 A[2020]=1 A[2020]=1。
解答
容易知道 ∑ i = 0 2022 A [ i ] = 2023 \sum_{i=0}^{2022}A[i]=2023 ∑i=02022A[i]=2023, ∑ i = 0 2022 B [ i ] = 2023 \sum_{i=0}^{2022}B[i]=2023 ∑i=02022B[i]=2023,设 A [ 0 ] = p , B [ 0 ] = t A[0]=p,B[0]=t A[0]=p,B[0]=t,则 B B B 有 p p p 个元素是 0 0 0,且 ∑ i = 1 2022 B [ i ] = 2023 − t \sum_{i=1}^{2022}B[i]=2023-t ∑i=12022B[i]=2023−t。又 B [ 1 ⋯ 2022 ] B[1\cdots 2022] B[1⋯2022] 这些元素中有 2022 − p 2022-p 2022−p 个非零,于是 2022 − p ≤ 2023 − t 2022-p\le 2023-t 2022−p≤2023−t,故 p ≥ t − 1 p\ge t-1 p≥t−1;又 A [ 0 ] < B [ 0 ] A[0]<B[0] A[0]<B[0] 即 p < t p<t p<t,故 t − 1 ≤ p < t t-1\le p<t t−1≤p<t,故 p = t − 1 p=t-1 p=t−1。
得到 A [ 0 ] = t − 1 , B [ 0 ] = t A[0]=t-1,B[0]=t A[0]=t−1,B[0]=t。于是 B [ 1 ⋯ 2022 ] B[1\cdots 2022] B[1⋯2022] 中有 t − 1 t-1 t−1 个 0 0 0, 2023 − t 2023-t 2023−t 个非零。记 B [ 1 ⋯ 2022 ] B[1\cdots 2022] B[1⋯2022] 中的非零元素为 B [ p 1 ] , B [ p 2 ] , ⋯ , B [ p 2023 − t ] B[p_1],B[p_2],\cdots,B[p_{2023-t}] B[p1],B[p2],⋯,B[p2023−t],故 ∑ i = 1 2023 − t B [ p i ] = 2023 − t \sum_{i=1}^{2023-t}B[p_i]=2023-t ∑i=12023−tB[pi]=2023−t,故 B [ p i ] = 1 B[p_i]=1 B[pi]=1。于是得到,除 B [ 0 ] = t B[0]=t B[0]=t 外, B [ i ] ∈ { 0 , 1 } , 1 ≤ i ≤ 2022 B[i]\in\{0,1\},1\le i\le 2022 B[i]∈{0,1},1≤i≤2022,且有 t − 1 t-1 t−1 个 0 0 0, 2023 − t 2023-t 2023−t 个 1。于是有 A [ 0 ] = t − 1 , A [ 1 ] = 2023 − t , A [ B [ 0 ] ] = A [ t ] = 1 A[0]=t-1,A[1]=2023-t,A[B[0]]=A[t]=1 A[0]=t−1,A[1]=2023−t,A[B[0]]=A[t]=1,其余的 A [ i ] A[i] A[i] 为 0 0 0。
容易证明 t − 1 , 2023 − t , 1 t-1,2023-t,1 t−1,2023−t,1 任意两个不可相等,于是 B [ t − 1 ] = B [ 2023 − t ] = B [ 1 ] = 1 , B [ 0 ] = t B[t-1]=B[2023-t]=B[1]=1,B[0]=t B[t−1]=B[2023−t]=B[1]=1,B[0]=t,其余为 0 0 0。故 1 + 1 + 1 + t = 2023 1+1+1+t=2023 1+1+1+t=2023, t = 2020 t=2020 t=2020。故 A [ B [ 0 ] ] = A [ 2020 ] = 1 A[B[0]]=A[2020]=1 A[B[0]]=A[2020]=1。
思路 根据定义设出未知,然后小心证明。