1class Solution {2public:3vector<vector<int>> reconstructMatrix(int upper, int lower, vector<int> &colsum) {4vector<int> u, l;5vector<vector<int>> ans;67for (int i : colsum) {8if (i == 2) {9u.push_back(1);10l.push_back(1);11upper--;12lower--;13} else if (i == 0)14u.push_back(0), l.push_back(0);1516else if (i == 1) {17if (upper >= lower) {18u.push_back(1);19l.push_back(0);20upper--;21} else {22u.push_back(0);23l.push_back(1);24lower--;25}26}27}28if (upper == 0 && lower == 0) {29ans.push_back(u);30ans.push_back(l);31}32return ans;33}34};