Cod sursa(job #1559766)

Utilizator catu_bogdan_99Catu Bogdan catu_bogdan_99 Data 31 decembrie 2015 15:27:04
Problema Grozavesti Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.07 kb
#include <cstdio>
#include <iostream>
using namespace std;

int v[500][500];
int r[650][2];

int q[500];
int nb[500];

int main()
{

    freopen("grozavesti.in","r",stdin);
    freopen("grozavesti.out","w",stdout);

    int n, i, j, s, t, d, k, ma;

    scanf("%d",&n);
    for( i = 1; i <= n; ++i ){
        for( j = 1; j <= n; ++j ){
            scanf("%d",&v[i][j]);
            if( i == j ) q[i] = v[i][j];
        }
        nb[i] = i;
    }

    t = 0;
    s = 0;
    for( i = 1; i < n; ++i ){
        ma = 1<<23;
        d = 0;
        for( j = i + 1; j <= n; ++j ){
            if( q[i] < ma ){
                ma = q[j];
                d = nb[j];
            }
        }
        if( q[i] > ma ){
            t++;
            s += 2;
            r[t][1] = i;
            r[t][2] = d;
            swap(q[i],q[d]);
            swap(nb[i],nb[d]);
        }

    }

    printf("%d\n",s);
    for( i = 1; i <= t; ++i ){
        printf("C %d %d\n",r[i][1],r[i][2]);
        printf("L %d %d\n",r[i][1],r[i][2]);
    }


    return 0;
}