Cod sursa(job #2071109)

Utilizator osiaccrCristian Osiac osiaccr Data 20 noiembrie 2017 12:03:29
Problema Grozavesti Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.8 kb
#include <fstream>
#define DEF 310
#define INF 1 << 29

using namespace std;

ifstream fin ("grozavesti.in");
ofstream fout ("grozavesti.out");

int a[DEF][DEF], n, k;

pair < int, int > v[2 * DEF];

int main () {
  fin >> n;
  for (int i = 1; i <= n; ++ i) {
    for (int j = 1; j <= n; ++ j) {
      fin >> a[i][j];
    }
  }

  for (int x = 1; x <= n; ++ x) {
    int poz = x;
    for (int i = x + 1; i <= n; ++ i) {
        if (a[poz][poz] > a[i][i]) {
            poz = i;
        }
    }
    if (poz != x) {
      swap (a[x][x], a[poz][poz]);
      v[++k] = make_pair (x, poz);
    }
  }

  fout << 2 * k << "\n";
  for (int i = 1; i <= k; ++ i) {
    fout << "L " << v[i].first << " " << v[i].second << "\nC " << v[i].first << " " << v[i].second << "\n";
  }

  return 0;
}