Advertisement
Guest User

Untitled

a guest
Mar 29th, 2020
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.54 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2.  
  3. using namespace std;
  4.  
  5. unsigned inf = 1e9 + 7;
  6. const int m = 600;
  7. int help[m];
  8. bool vector_cmp(pair<unsigned, unsigned> a, pair<unsigned, unsigned> b) {
  9.     if (help[a.second] < help[b.second]) {
  10.         return true;
  11.     }
  12.     return false;
  13. }
  14.  
  15. bool matrice_cmp(vector <pair <unsigned, unsigned> > a, vector <pair <unsigned, unsigned> > b) {
  16.     for (int i = 0; i < a.size(); ++i) {
  17.         if (a[i].first < b[i].first) {
  18.             return true;
  19.         } else if (b[i].first > a[i].first) {
  20.             return false;
  21.         }
  22.     }
  23.     return true;
  24. }
  25. int main() {
  26.     int n, m;
  27.     cin >> n >> m;
  28.     vector <vector <pair <unsigned, unsigned> > > v(n, vector< pair <unsigned, unsigned> > (m));
  29.     int row;
  30.     for (int i = 0; i < n; ++i) {
  31.         for (int j = 0; j < m; ++j) {
  32.             cin >> v[i][j].first;
  33.             if (v[i][j].first < inf) {
  34.                 inf = v[i][j].first;
  35.                 row = i;
  36.             }
  37.             v[i][j].second = j;
  38.         }
  39.     }
  40.     sort(v[row].begin(), v[row].end());
  41.     vector <pair <unsigned, unsigned> > tmp(v[row].begin(), v[row].end());
  42.     v[row] = v[0];
  43.     v[0] = tmp;
  44.     for (int i = 0; i < m; ++i) {
  45.         help[v[0][i].second] = i;
  46.     }
  47.     for (int i = 1; i < n; ++i) {
  48.         sort(v[i].begin(), v[i].end(), vector_cmp);
  49.     }
  50.     //sort(v.begin() + 1, v.end(), matrice_cmp);
  51.     for (int i = 0; i < n; ++i) {
  52.         for (int j = 0; j < m; ++j) {
  53.             cout << v[i][j].first << ' ';
  54.         }
  55.         cout << endl;
  56.     }
  57. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement