线性同余方程,高斯消元法,矩阵乘法:
给定整数a,b,m,求一个整数x满足a*xb(mod m),或者给出无解。因为未知数的指数为1,所以我们称之为一次同余方程,也称线性同余方程。线性同余方程有解当且仅当gcd(a,m)|b。 高斯消元法是一种求解线性方程组的方法,所谓线性方程组,是由M个N元一次方程构成的,线性方程组的所有系数可以写成一个系数矩阵。代数的知识我们知道,若系数矩阵和增广矩阵的秩相同,则该方程有唯一解。 我们可以通过行列式或者通过初等变换来求,高斯消元法是通过初等变换将增广矩阵变为简化阶梯形矩阵的方法求解。矩阵乘法是解决一些能够递推的问题,将其简化。矩阵相乘需要满足矩阵A的列数等于矩阵B的行数,不满足的话可以填补0来构造。模板:
for(i=1;i<=m;i++)
for(j=1;j<=n;j++)
cin>>num1[i][j];
for(i=1;i<=n;i++)
for(j=1;j<=k;j++)
cin>>num2[i][j];
for(i=1;i<=m;i++)
{
for(l=1;l<=k;l++)
{
int sum=0;
for(j=1;j<=n;j++)
{
sum=sum+num1[i][j]*num2[j][l];
num3[i][l]=sum;
}
}
}
for(i=1;i<=m;i++)
{
for(j=1;j<=k;j++)
cout<<num3[i][j]<<' ';
cout<<endl;
}