Pagini recente » Cod sursa (job #1911756) | Cod sursa (job #1382797) | Cod sursa (job #1931216) | Cod sursa (job #475994) | Cod sursa (job #237609)
Cod sursa(job #237609)
#include<stdio.h>
#define NMAX 300
int main(){
struct ch{int t,e1,e2;};
ch v[NMAX*NMAX+1];
freopen("grozavesti.in","r",stdin);
freopen("grozavesti.out","w",stdout);
int a[NMAX+1][NMAX+1],n,m=0,i,j,k,min,l,c,t;
scanf("%d",&n);
for(i=1;i<=n;++i)
for(j=1;j<=n;++j)scanf("%d",&a[i][j]);
for(k=1;k<n;++k){
min=a[k][k];l=c=k;
for(i=k;i<=n;++i)
for(j=k;j<=n;++j)
if(min>a[i][j]) min=a[i][j],l=i,c=j;
if(l!=k){
v[m].t=0;v[m].e1=k;v[m].e2=l;m++;
for(j=k;j<=n;++j) t=a[k][j],a[k][j]=a[l][j],a[l][j]=t;
}
if(c!=k){
v[m].t=1;v[m].e1=k;v[m].e2=c;m++;
for(i=k;i<=n;++i) t=a[i][k],a[i][k]=a[i][c],a[i][c]=t;
}
}
printf("%d\n",m);
for(i=0;i<m;++i){
if(v[i].t) printf("C ");
else printf("L ");
printf("%d %d\n",v[i].e1,v[i].e2);
}
return 0;
}