小塔希望你构造一个n行m列的、由正整数组成矩阵,满足每一行、每一列均为等差数列,且所有元素之和恰好等于x。你能帮帮他吗?
提供一种满足的构造方法,每一行每一列的公差(d)都是相等的 第i行的和=(i−1)∗m∗d+m∗(2∗a1∗(m−1)∗d)/2 等式第二项是定值,第i行于第i+1行的差也是定值为m∗d.得到n∗m∗(2∗a1+(m−1)∗d)/2=x,题目要求正整数得到一下两个性质 1. x∗2是n∗m的倍数 2. 2∗a1+(m−1)∗d=(x∗2/n/m)可以解得a1和d是正整数 最简单的方法也就是枚举d=0,1,2. 2∗a1一定是偶数,所以d=0,1,2可以概括全部情况 也可以直接exgcd求解一个二元一次方程