Pagini recente » Cod sursa (job #3173989) | Cod sursa (job #128930) | Cod sursa (job #312077) | Cod sursa (job #489544) | Cod sursa (job #204858)
Cod sursa(job #204858)
#include <stdio.h>
#define min(a,b) ((a>b)?b:a)
#define nmax 1000002
int n,i,j,k,a[302][302],min,x,y,m,sc[902],aux;
int main(){
freopen("grozavesti.in","r",stdin);
freopen("grozavesti.out","w",stdout);
scanf("%d",&n);
for(i=1;i<=n;++i)
for(j=1;j<=n;++j)
scanf("%d",&a[i][j]);
for(i=1;i<=n-1;++i)
{
min = a[i][i];x=y=0;
for(j=i;j<=n;++j)
for(k=i;k<=n;++k)
if(a[j][k]<=min&&a[j][k]>a[i-1][i-1])
min=a[j][k],x=j,y=k;
if(x&&y)
{
if(y!=i){
sc[++m]=1,
sc[++m]=i,
sc[++m]=y;
for(j=1;j<=n;++j){aux=a[j][i];a[j][i]=a[j][y];a[j][y]=aux;}
}
if(x!=i){
sc[++m]=0,
sc[++m]=i,
sc[++m]=x;
for(j=1;j<=n;++j){aux=a[i][j];a[i][j]=a[x][j];a[x][j]=aux;}
}
}
}
printf("%d\n",m/3);
for(i=1;i<=m;++i)
{
if(i%3==1)printf((sc[i])?"C ":"L ");
else if(i%3==2)printf("%d ",sc[i]);
else printf("%d\n",sc[i]);
}
/*
printf("\n");
for(i=1;i<=n;++i){
for(j=1;j<=n;++j)
printf("%d ",a[i][j]);printf("\n");}*/
return 0;
}