精華區beta Marginalman 關於我們 聯絡資訊
1072. bitset 翻一翻 因為要固定size 所以做了個mask 讓超過n的不變 我還是很不習慣直接對數字操作 class Solution { public: int maxEqualRowsAfterFlips(vector<vector<int>>& mat) { unordered_map<bitset<301>, int> mp; int n = mat[0].size(); string m = string(301 - n, '1') + string(n, '0'); bitset<301> mask(m); cout << "M: " << mask << '\n'; for(auto& row: mat){ string bit_s(row.begin(), row.end()); for(char& c: bit_s){ c += '0'; } bitset<301> bs(bit_s); mp[bs | mask]++; bs.flip(); mp[bs | mask]++; } int mx = 1; for(auto& [bs, cnt]: mp){ mx = max(mx, cnt); } return mx; } }; ----- Sent from JPTT on my iPad -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 123.205.121.194 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1732301697.A.757.html