有人可以帮助我解决模算术(!)中的线性方程组的算法。我只需要“最小”的解决方案。最小的意思是按字典顺序排列。
让我们有这个系统:
3x1+2x2=3
4x1+3x2+1x3+2x4=4
x 旁边的数字是索引。
我们使用模 5(0<=x<=p,其中 p 是我们的模)的系统的矩阵是
3 2 0 0 0 | 3
4 3 1 2 0 | 4
最小的解决方案是 (0,4,0,1,0)。我必须编写一个算法来给我那个解决方案。我在考虑蛮力,因为 p<1000。但我不知道该怎么做,因为在这种情况下,在第一行我必须 x1=0 ... p-1 ,然后解决 x2,在第二行我必须选择 x3= 0 ... p-1。并解决 x4。我必须这样做,直到该方程组成立。如果我从 0 .. p-1 开始,那么我得到的第一个解决方案将是最小的解决方案。
PS:矩阵可以有很多种形式,比如:
3 2 4 0 0 | 3
4 3 1 2 1 | 4
1 2 0 0 0 | 3
3 0 3 0 0 | 3
4 3 1 2 3 | 4
等
对不起我的英语,我来自亚洲。
编辑:我在考虑如何确定哪些变量是参数。但是想不通....