Pagini recente » Cod sursa (job #2349205) | Cod sursa (job #90758) | Cod sursa (job #3183601) | Cod sursa (job #2381327) | Cod sursa (job #116559)
Cod sursa(job #116559)
#include<stdio.h>
long n,i,j,l,c,nr,aux,k,x,y,min=1000001,a[31][31],sol[3][601];
char ch[601];
int main()
{
freopen("grozavesti.in","r",stdin);
freopen("grozavesti.out","w",stdout); //a11 a12 a13 a14 a15 a16 a17
scanf("%ld",&n); //a21 a22 a23 a24 a25 a26 a27
for(i=1;i<=n;i++) //a31 a32 a33 a34 a35 a36 a37
for(j=1;j<=n;j++) //a41 a42 a43 a44 a45 a46 a47
{ //a51 a52 a53 a54 a55 a56 a57
scanf("%ld",&a[i][j]); //a61 a62 a63 a64 a65 a66 a67
if(a[i][j]<min) //a71 a72 a73 a74 a75 a76 a77
{
l=i;
c=j;
min=a[i][j];
}
}
nr=1;
/*if(l==nr && c!=nr)
{
for(i=1;i<=n;i++)
{
aux=a[i][nr];
a[i][nr]=a[i][c];
a[i][c]=aux;
}
sol[1][++k]=nr;
sol[2][k]=c;
ch[k]='C';
}
else
if(l!=nr && c==nr)
{
for(j=1;j<=n;j++)
{
aux=a[nr][j];
a[nr][j]=a[l][j];
a[l][j]=aux;
}
sol[1][++k]=nr;
sol[2][k]=l;
ch[k]='L';
}
else
if(l!=nr && c!=nr)
{
//coloana
for(i=1;i<=n;i++)
{
aux=a[i][nr];
a[i][nr]=a[i][c];
a[i][c]=aux;
}
sol[1][++k]=nr;
sol[2][k]=c;
ch[k]='C';
//linia
for(j=1;j<=n;j++)
{
aux=a[nr][j];
a[nr][j]=a[l][j];
a[l][j]=aux;
}
sol[1][++k]=nr;
sol[2][k]=l;
ch[k]='L';
}
nr++; */
nr++;
while(nr<=n)
{
min=1000001;
for(x=nr;x<=n;x++)
for(y=nr;y<=n;y++)
if(a[x][y]<min)
{
l=x;
c=y;
min=a[x][y];
}
if(c!=nr)
{
for(i=1;i<=n;i++)
{
aux=a[i][nr];
a[i][nr]=a[i][c];
a[i][c]=aux;
}
sol[1][++k]=nr;
sol[2][k]=c;
ch[k]='C';
}
if(l!=nr)
{
for(j=1;j<=n;j++)
{
aux=a[nr][j];
a[nr][j]=a[l][j];
a[l][j]=aux;
}
sol[1][++k]=nr;
sol[2][k]=l;
ch[k]='L';
}
nr++;
}
printf("%ld\n",k);
if(k)
for(i=1;i<=k;i++)
printf("%c %ld %ld\n",ch[i],sol[1][i],sol[2][i]);
else
printf("0");
return 0;
}