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 ; } 我写的是这个  不过我没参加这次笔试  是看了题目自己写的   通过了一些用例
点赞 评论

相关推荐

不愿透露姓名的神秘牛友
01-07 00:20
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务