struct rect {
int m1;
int m2;
int m3;
rect(int m_1, int m_2, int m_3) :m1(m_1), m2(m_2), m3(m_3) {};
};
void main() {
auto cmp = [](const rect a, const rect b) {
return a.m1>b.m1;
};
vector<vector<int>> res(5, vector<int>(5, 0));
vector<rect> tmp;
vector<int> a = { 4,4,1,2,1 };
vector<int> b = { 4,3,0,1,1 };
for (int i = 0; i < a.size(); ++i) {
for (int j = 0; j < b.size(); ++j) {
res[i][j] = (a[i] + b[j]) % 5;
tmp.push_back(rect(res[i][j], i, j));
}
}
set<pair<int, int>> s;
set<int> i_s;
set<int> j_s;
sort(tmp.begin(), tmp.end(),cmp);
vector<int> result;
for (int i = 0; i < tmp.size(); ++i) {
if (i_s.count(tmp[i].m2)==1 || j_s.count(tmp[i].m3)==1) {
continue;
}
else {
result.push_back(tmp[i].m1);
i_s.insert(tmp[i].m2);
j_s.insert(tmp[i].m3);
}
}
return ;
}
我写的是这个 不过我没参加这次笔试 是看了题目自己写的 通过了一些用例