Pagini recente » Cod sursa (job #3254896) | Cod sursa (job #786356) | Cod sursa (job #545996) | Cod sursa (job #1831554) | Cod sursa (job #1516704)
#include<fstream>
#include<iostream>
#include<vector>
#include <cstring>
using namespace std;
ifstream fin("grozavesti.in");
ofstream fout("grozavesti.out");
int n,m,k,i,j,p,x,y,a[305][305],t,cont;
struct coada
{
char ch;
int x, y;
};
coada sol[305];
int minim(int k)
{
int i, p;
p = k;
for (i = k + 1; i <= n; i++)
if (a[p][p] > a[i][i])
p = i;
return p;
}
void linie(int k, int p)
{
int i;
for (i = 1; i <= n; i++)
swap(a[k][i], a[p][i]);
}
void coloana(int k, int p)
{
int i;
for (i = 1; i <= n; i++)
swap(a[i][k], a[i][p]);
}
int main()
{
fin>>n;
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
{
fin>>a[i][j];
}
}
cont=0;
for(i=1;i<=n;i++)
{
k=minim(i);
if(k!=i)
{
cont++;
sol[cont].ch='L'; sol[cont].x=i; sol[cont].y=k;
cont++;
sol[cont].ch='C'; sol[cont].x=i; sol[cont].y=k;
linie(i,k);
coloana(i,k);
}
}
fout<<cont<<"\n";
for(i=1;i<=cont;i++)
{
fout<<sol[i].ch<<" "<<sol[i].x<<" "<<sol[i].y<<"\n";
}
fout<<"\n";
}