一开始的系数和常数项都正确,但消元之后的方程就假了。
void Guess()
{
F(i,1,n)
{
ma=i;
F(j,1,m)
{
if(a[j][j]&&j<i) continue;
if(a[j][i]>a[ma][i]) ma=j;
}
F(j,1,n+1) sd swap(a[i][j],a[ma][j]);
if(!a[i][i]) continue;
F(j,1,m)
{
if(i==j) continue;
int rate=a[j][i]*ksm(a[i][i],5)%7;
F(k,1,n+1) a[j][k]=(a[j][k]-a[i][k]*rate+7)%7;
}
}
}