leetcode/2482-20231215/main.cpp
2024-05-24 22:03:54 +02:00

52 lines
1.4 KiB
C++

#include<vector>
#include<iostream>
using namespace std;
class Solution {
public:
vector<vector<int>> onesMinusZeros(vector<vector<int>>& grid) {
int cols[100010] = {};
int rows[100010] = {};
for(int i = 0 ; i < grid.size(); i++){
for(int j = 0 ; j < grid[i].size(); j++){
if(grid[i][j]){
cols[j]++;
rows[i]++;
}
}
}
int colszero[100010] = {};
int rowszero[100010] = {};
int cols_size = grid.size();
int rows_size = grid[0].size();
for(int i = 0 ; i <grid.size();i++){
colszero[i] = cols_size - cols[i];
rowszero[i] = rows_size - rows[i];
}
vector<vector<int> >rlt;
for(int i = 0 ; i < cols_size ; i++){
vector<int> tmp ;
for(int j = 0 ; j <rows_size ;j++){
tmp.push_back(rows[i]+cols[j]-colszero[j]-rowszero[i]);
}
rlt.push_back(tmp);
}
return rlt;
}
};
int main(){
Solution sol;
vector<int> ex1row1 = {0,1,1};
vector<int> ex1row2 = {1,0,1};
vector<int> ex1row3 = {0,0,1};
vector<vector<int> >ex1 = {ex1row1, ex1row2, ex1row3};
auto sol1 = sol.onesMinusZeros(ex1);
for(int i = 0 ; i < sol1.size();i++){
for(int j = 0 ; j < sol1[i].size(); j++){
cout<<sol1[i][j]<<' ';
}
cout<<endl;
}
return 0;
}