题解 | #清除行列#
清除行列
http://www.nowcoder.com/practice/c95aac1506574dfc8ad44c3939c6739d
class Clearer {
public:
vector<vector<int> > clearZero(vector<vector<int> > mat, int n) {
// write code here
vector<pair<int,int> > vec;
for(int i = 0;i < n;++i){
for(int j = 0;j < n;++j){
if(mat[i][j] == 0)
vec.push_back(pair<int,int>(i,j));
}
}
for(int k = 0,i,j;k < vec.size();++k){
i = vec[k].first;
j = vec[k].second;
//行
for(int row = 0;row < n;++row)
mat[row][j] = 0;
//列
for(int col = 0;col < n;++col)
mat[i][col] = 0;
}
return mat;
}
};