Cod sursa(job #229095)

Utilizator cotofanaCotofana Cristian cotofana Data 9 decembrie 2008 09:28:22
Problema Grozavesti Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.78 kb
#include <stdio.h>
#define dim 300

int n, v[dim+1], m[dim*2+1][3], k=0;

int main()
{
	int i, j, nr, min;
	freopen("grozavesti.in", "r", stdin);
	freopen("grozavesti.out", "w", stdout);
	scanf("%d\n", &n);
	for (i=1; i<=n; i++)
		for (j=1; j<=n; j++)
		{	
			scanf("%d ", &nr);
			if (i==j) v[i]=nr;
		}
	for (i=1; i<n; i++)
	{
		min=v[i];
		nr=i;
		for (j=i; j<=n; j++)
			if (v[j]<min)
			{
				min=v[j];
				nr=j;
			}
		if (i!=nr)
		{
			k++;
			m[k][0]=0;
			m[k][1]=i;
			m[k][2]=nr;
			k++;
			m[k][0]=1;
			m[k][1]=i;
			m[k][2]=nr;
			min=v[i];
			v[i]=v[nr];
			v[nr]=min;
		}
	}
	printf("%d\n", k);
	for (i=1; i<=k; i++)
	{
		if (m[i][0]==0) printf("C ");
		else printf("L ");
		printf("%d %d\n", m[i][1], m[i][2]);
	}
	return 0;
}