跳转至

数学——数论--四平方和定理

四平方和定理又称拉格朗日定理(Lagrange's Four-square Theorem)。定理指出每个正整数均可表示为4个整数的平方和。

参考证明:https://zhuanlan.zhihu.com/p/104030654?from_voters_page=true

四平方和定理基于的是欧拉恒等式: $$ \left(x_{1}{2}+x_{2}{2}+x_{3}{2}+x_{4}{2}\right) \cdot\left(y_{1}{2}+y_{2}{2}+y_{3}{2}+y_{4}{2}\right)=z_{1}{2}+z_{2}{2}+z_{3}{2}+z_{4}{2} \ \left{\begin{array}{l} z_{1}=x_{1} y_{1}+x_{2} y_{2}+x_{3} y_{3}+x_{4} y_{4} \ z_{2}=x_{1} y_{2}-x_{2} y_{1}-x_{3} y_{4}+x_{4} y_{3} \ z_{3}=x_{1} y_{3}-x_{3} y_{1}+x_{2} y_{4}-x_{4} y_{2} \ z_{4}=x_{1} y_{4}-x_{4} y_{1}-x_{2} y_{3}+x_{3} y_{2} \end{array}\right. $$ 恒等式的证明只需要将左右展开比较即可。恒等式说明,如果两个数字mn可以表示成四个平方数的和,那么它们的乘积也可以表示成四个平方数的和。考虑2这个特殊的质数,可以表示成 $$ 2=1{2}+1{2}+0{2}+0{2} $$ 考虑大于2的正整数,这些正整数都可以进行质因数分解,即表示成质因数的乘积,那么只需证明任何一个大于2的质数均可以表示成4个数的平方和。

定理的内容是4个整数,并未指明必须都是正整数,所以可能存在其中一个或多个为0的情况。这个结论对于解决LeetCode 279的帮助是,可准确知道最后结果只能是1,2,3,4中的一个,然后再结合勒让德三平方和定理和费马平方和定理来确定结果。

典型题目

  • LeetCode 279.完全平方数