由于数论和组合数学是信息学最关注的数学分支,因此,我们也对今年数学营中的这些部分做一定的了解。
第一轮最后一道压轴题描述如下:
已知 p , q , 3 p − 1 q , q − 1 p p,q,{3p-1\over q},{q-1\over p} p,q,q3p−1,pq−1 都是正整数,求 p 2 + q 2 p^2+q^2 p2+q2 的最大值。
本题是一道比较基础的数论题,我们在做一些编程题分析的时候也会用到这样的基础知识:
- 数论中所有讨论的数都必须是整数;
- 若 x y x\over y yx 为正整数,通常我们就直接设 x y = k {x\over y}=k yx=k,其中 k k k 为正整数即可。
根据这两点就可以完成这道题了。
解:令
3
p
=
k
1
∗
q
+
1
q
=
k
2
∗
p
+
1
\begin{align} &3p=k_1\ast q +1\tag {1}\\ &q=k_2\ast p+1\tag {2} \end{align}
3p=k1∗q+1q=k2∗p+1(1)(2)
将 (2) 代入 (1),得
3
p
=
k
1
∗
(
k
2
∗
p
+
1
)
+
1
3p =k_1\ast(k_2\ast p+1)+1
3p=k1∗(k2∗p+1)+1,通过整理可得
(
3
−
k
1
∗
k
2
)
p
=
k
1
+
1
(3)
(3-k_1\ast k_2)p=k_1+1 \tag{3}
(3−k1∗k2)p=k1+1(3)
由于
k
1
,
k
2
,
p
,
q
k_1,k_2,p,q
k1,k2,p,q 均为正整数,因此
3
>
k
1
∗
k
2
3\gt k_1\ast k_2
3>k1∗k2:
- 当 k 1 = 1 , k 2 = 1 k_1=1,k_2=1 k1=1,k2=1 时,代入 (3) 式解得 p = 1 p=1 p=1,代入 (2) 式得 q = 2 q=2 q=2;
- 当 k 1 = 1 , k 2 = 2 k_1=1,k_2=2 k1=1,k2=2 时,代入 (3) 式解得 p = 2 p=2 p=2,代入 (2) 式得 q = 5 q=5 q=5;
- 当 k 1 = 2 , k 2 = 1 k_1=2,k_2=1 k1=2,k2=1 时,代入 (3) 式解得 p = 3 p=3 p=3,代入 (2) 式得 q = 4 q=4 q=4;
综上,当 p = 2 , q = 5 p=2,q=5 p=2,q=5 时, p 2 + q 2 p^2+q^2 p2+q2 取最大值为 29 29 29。