Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <iomanip>
- #include <string>
- #include <sstream>
- #include <algorithm>
- #include <vector>
- #include <stdlib.h>
- #include <stdio.h>
- #include <fstream>
- #include <stack>
- #include <map>
- #include <cstring>
- #include <cmath>
- #include <set>
- #include <iterator>
- #include <cmath>
- #include <locale>
- using namespace std;
- bool cols(const vector<long long> &col1, const vector<long long> &col2)
- {
- long long n1 = 0, n2 = 0;
- for(int i = 0; i < col1.size(); i++)
- {
- if(abs(col1[i]) % 10 == 3)
- n1++;
- if(abs(col2[i]) % 10 == 3)
- n2++;
- }
- return n1 <= n2;
- }
- bool col(long long num1, long long num2)
- {
- if(abs(num1) == abs(num2))
- return num2 <= num1;
- return abs(num2) < abs(num1);
- }
- int main()
- {
- int n, m;
- cin >> n >> m;
- vector<vector<long long> > mtrx(m, vector<long long>(n));
- for(int i = 0; i < n; i++)
- for(int j = 0; j < m; j++)
- cin >> mtrx[j][i];
- sort(mtrx.begin(), mtrx.end(), cols);
- for(int j = 0; j < m; j++)
- sort(mtrx[j].begin(), mtrx[j].end(), col);
- for(int i = 0; i < n; i++)
- {
- for(int j = 0; j < m; j++)
- cout << mtrx[j][i] << " ";
- cout << endl;
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement