1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| int sol(int x) { int res=1,w=1; for(int i=1;i<=x;i++) { for(int j=i+1;j<=x;++j) { while(a[i][i]) { int div=a[j][i]/a[i][i]; for(int k=i;k<=x;++k) { a[j][k]=(a[j][k]-1ll*div*a[i][k]); } swap(a[i],a[j]);w=-w; } swap(a[i],a[j]);w=-w; } } for(int i=1;i<=x;i++)res=1ll*a[i][i]*res; res=1ll*w*res; return res; }
|