Cod sursa(job #2360445)

Utilizator ApostolIlieDanielApostol Daniel ApostolIlieDaniel Data 1 martie 2019 20:34:26
Problema Grozavesti Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.79 kb
#include <bits/stdc++.h>

using namespace std;
#define x first
#define y second

const int MAXN = 300;
pair <int, int> sol[MAXN + 1];
int a[MAXN + 1];
int main() {
  int n, k, i, j, x, mn;
  freopen ("grozavesti.in", "r", stdin);
  freopen ("grozavesti.out", "w", stdout);
  scanf ("%d", &n);
  k = 0;
  for (i = 1; i <= n; i++)
    for (j = 1; j <= n; j++) {
      scanf ("%d", &x);
      if (i == j)
        a[++k] = x;
    }
  k = 0;
  for (i = 1; i <= n; i++) {
    mn = i;
    for (j = i + 1; j <= n; j++)
      if (a[mn] > a[j])
        mn = j;
    if (mn != i) {
      swap (a[mn], a[j]);
      sol[++k] = {mn, j};
    }
  }
  printf ("%d\n", k * 2);
  for (i = 1; i <= k; i++)
    printf ("L %d %d\n C %d %d\n", sol[i].x, sol[i].y, sol[i].x, sol[i].y);
  return 0;
}