在你的while里面加个特判
while(L[j][i]) { for(int k=i;k<=n;k++)swap(L[i][k],L[j][k]); ans*=-1; pos=L[j][i]/L[i][i]; for(int k=i;k<=n&&pos;k++)//&&pos加上 L[j][k]=(1ll*L[j][k]-1ll*L[i][k]*pos%mod+mod)%mod; }
我加上就过了 : )