Pagini recente » Cod sursa (job #808815) | Cod sursa (job #1538149) | Cod sursa (job #2687273) | Cod sursa (job #2659295) | Cod sursa (job #668405)
Cod sursa(job #668405)
#include <fstream>
using namespace std;
int a[300],b[300],i,j;
int n,m;
int c;
int poz(int st,int dr)
{
int xst=0,xdr=-1;
while (st<dr)
if (a[st]<a[dr])
{ st+=xst; dr+=xdr; }
else
{
swap(a[st],a[dr]);
swap(b[st],b[dr]);
xst=1-xst;
xdr=-1-xdr;
st+=xst;
dr+=xdr;
}
return st;
}
void scaner()
{
int x;
scanf("%d",&x);
}
void quick(int st,int dr)
{
int p=poz(st,dr);
if (st<p-1)
quick(st,p-1);
if (p+1<dr)
quick(p+1,dr);
}
int main()
{
freopen("grozavesti.in","r",stdin);
freopen("grozavesti.out","w",stdout);
scanf("%d%d",&n);
for (int i=1;i<=n;++i)
for (int j=1;j<=n;++j)
if (i!=j)
scaner();
else
{
scanf("%d",&a[i]);
b[i]=i;
}
quick(1,n);
for (int i=1;i<=n;++i)
if (i!=b[i])
++c;
printf("%d\n",c);
for (int i=1;i<=n;++i)
if (i!=b[i])
{
printf("L %d %d\n",i,b[i]);
printf("C %d %d\n",i,b[i]);
}
return 0;
}