Pagini recente » Cod sursa (job #903118) | Cod sursa (job #427195) | Cod sursa (job #1677076) | Cod sursa (job #1668923) | Cod sursa (job #132242)
Cod sursa(job #132242)
#include<stdio.h>
#define m 305
struct mutare{
char ax;
int b,c;
};
mutare a[2*m];
int nr[m][m],aux;
int main(){
freopen("grozavesti.in","r",stdin);
freopen("grozavesti.out","w",stdout);
int n,i,j,k,j1,k1,min,x=0;
scanf("%d",&n);
for(i=0;i<n;++i){
for(j=0;j<n;++j)
scanf("%d",&nr[i][j]);
}
for(i=0;i<n;++i){
min=10000000;
j1=i;
k1=i;
for(j=i;j<n;++j){
for(k=i;k<n;++k){
if(min>nr[j][k]){
min=nr[j][k];
j1=j;
k1=k;
}
}
}
if(min<nr[i][i]){
if(i!=k1){
a[x].ax='C';
a[x].b=i+1;
a[x++].c=k1+1;
for(j=i;j<n;++j){
aux=nr[j][k1];
nr[j][k1]=nr[j][i];
nr[j][i]=aux;
}
}
if(i!=j1){
a[x].ax='L';
a[x].b=i+1;
a[x++].c=j1+1;
for(j=i;j<n;++j){
aux=nr[j1][j];
nr[j1][j]=nr[i][j];
nr[i][j]=aux;
}
}
}
}
printf("%d\n",x);
for(i=0;i<x;++i)
printf("%c %d %d\n",a[i].ax,a[i].b,a[i].c);
fclose(stdin);
fclose(stdout);
return 0;
}