Cod sursa(job #1023938)

Utilizator Athena99Anghel Anca Athena99 Data 7 noiembrie 2013 21:41:39
Problema Grozavesti Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.9 kb
#include <fstream>

using namespace std;

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

const int nmax= 300;

int m[nmax+1][nmax+1], x[nmax+1], a[nmax+1], b[nmax+1];

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

    int k= 1;
    for ( int i=n; i>=2; --i ) {
        int max= x[1], p= 1;
        for ( int j= 2; j<=i; ++j ) {
            if ( x[j]>max ) {
                max= x[j];
                p= j;
            }
        }
        if ( i!=p ) { 
            int aux= x[i];
            x[i]= x[p];
            x[p]= aux;
            a[k]= i;
            b[k]= p;
            ++k;
        }
    }

    fout<<2*k-2<<"\n";
    for ( int i= 1; i<k; ++i ) {
        fout<<"L "<<a[i]<<" "<<b[i]<<"\n";
        fout<<"C "<<a[i]<<" "<<b[i]<<"\n";
    }

    return 0;
}