Cod sursa(job #256209)

Utilizator n3msizN3msiz n3msiz Data 11 februarie 2009 12:53:55
Problema Grozavesti Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.18 kb
#include <stdio.h>
#define DIM 302
int a[DIM][DIM],s,i,j,k,aux,n;
char op[2*DIM];
int v[2*DIM];
int w[2*DIM];
int min, pmin;

int main() {
  FILE *f = fopen("grozavesti.in","r");

  fscanf(f,"%d",&n);
  for (i=1;i<=n;i++)
    for (j=1;j<=n;j++)
      fscanf(f,"%d",&a[i][j]);
  fclose(f);


   FILE *g = fopen("grozavesti.out","w");


   for (i=1;i<n;i++) {
     min = a[i][i];
     pmin = i;
     for (j=i+1;j<=n;j++)
       if (a[j][j]<min) {
	 min = a[j][j];
	 pmin = j;
       }
     if (pmin!=i) {
       s+=2;
       op[s-1] = 'L';
       v[s-1] = i;
       w[s-1] = pmin;
       op[s] = 'C';
       v[s] = i;
       w[s] = pmin;

     }
   }




//   for (i=1;i<n;i++)
//    for (j=i+1;j<=n;j++)
//      if (a[i][i]>a[j][j]) {

     /*	for (k=1;k<=n;k++) {
	  aux = a[i][k];
	  a[i][k] = a[j][k];
	  a[j][k] = aux;

	}

       //	fprintf(g, "L %d %d\n",i,j);

	for (k=1;k<=n;k++) {
	  aux = a[k][i];
	  a[k][i] = a[k][j];
	  a[k][j] = aux;

	}
       //	fprintf(g, "C %d %d\n",i,j);    */
//	s=s+2;
//      }
   fprintf(g,"%d\n",s);
   for (i=1;i<=s;i++)
     fprintf(g,"%c %d %d\n",op[i],v[i],w[i]);

   fclose(g);

   return 0;

}