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 ;


}
我写的是这个  不过我没参加这次笔试  是看了题目自己写的   通过了一些用例