Pagini recente » Cod sursa (job #1921924) | Cod sursa (job #2318178) | Cod sursa (job #1588548) | Cod sursa (job #2572983) | Cod sursa (job #123859)
Cod sursa(job #123859)
#include <stdio.h>
#include <stdlib.h>
long n,i,j,a[303][303],ind[303],sol;
long q,x[603],y[603];
int cmp(const void * n1, const void * n2){
return (a[*(long*)n1][*(long*)n1]-a[*(long*)n2][*(long*)n2]);
}
void path(int k){
if (ind[k]!=i){
//printf("%ld\n",k);
path(ind[k]);
q++;x[q]=k;y[q]=ind[k];
ind[k]=k;
}
else ind[k]=k;
}
int main(){
freopen("grozavesti.in","r",stdin);
freopen("grozavesti.out","w",stdout);
scanf("%ld",&n);
for (i=1;i<=n;i++)
for (j=1;j<=n;j++)
scanf("%ld",&a[i][j]);
for (i=0;i<=n;i++)
ind[i]=i;
qsort(ind,n+1,sizeof(long),cmp);
for (i=1;i<=n;i++)
if (ind[i]!=i){
path(i);
}
//printf("%ld\n",sol);
for (i=q;i>0;i--){
printf("C %ld %ld\n",x[i],y[i]);
printf("L %ld %ld\n",x[i],y[i]);
}
return 0;
}