#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; int elementaryMatrix(vector >& mat) { const int n = mat.size(); const int m = mat[0].size(); int y = 0; int x = 0; while(y < n && x < m){ int tmp = y; while(tmp < n && !mat[tmp][x]) ++ tmp; if(tmp < n){ swap(mat[y], mat[tmp]); for(int i=y+1; i> n; vector d(n); for(int i=0; i> d[i]; vector w(n); for(int i=0; i> w[i]; vector > mat(n); for(int i=0; i