@[_Lyk_def](/user/769863) 感觉可能是你的取模不对,我应该也是这个写法。
```cpp
for(int i=1;i<=n;i++){
static int d,now;
for(now=i;now<=n;now++) if(a[now][i]) break;
if(now==n+1) return puts("No Solution"),0;
swap(a[i],a[now]),d=inv(a[i][i]);
for(int j=i;j<=n*2;j++) a[i][j]=1ll*a[i][j]*d%mod;
for(int j=1;j<=n;j++) if(i!=j){
d=a[j][i];
for(int k=i;k<=n*2;k++) a[j][k]=((a[j][k]-1ll*d*a[i][k])%mod+mod)%mod;
}
}
```
by ScaredQiu @ 2023-07-03 20:33:43
@[ROADTOBURNTHESUN](/user/572364) 谢谢您,研究了一下发现是1ll*影响了结果
by _Lyk_def @ 2023-07-03 20:38:01