1class Solution {2public:3int numSpecial(vector<vector<int>> &mat) {4vector<vector<int>> v;5map<int, vector<int>> m;67for (int i = 0; i < mat.size(); i++) {8vector<int> temp = mat[i];910for (int j = 0; j < temp.size(); j++) {11m[j].push_back(temp[j]);12}13}14for (auto i : m) {15v.push_back(i.second);16}17int counter = 0;18for (int i = 0; i < mat.size(); i++) {19int onecount = 0;20int column = 0;21for (int j = 0; j < mat[i].size(); j++) {22if (mat[i][j] == 1) {23column = j;24onecount++;25}26}27if (onecount == 1) {28int countone = 0;29vector<int> temp = v[column];30for (auto i : temp) {31if (i == 1) {32countone++;33}34}35if (countone == 1) {36counter++;37}38}39}40return counter;41}42};