Pagini recente » Cod sursa (job #896409) | Cod sursa (job #1654053) | Cod sursa (job #1866412) | Cod sursa (job #312050) | Cod sursa (job #794621)
Cod sursa(job #794621)
// un mod mai eficient de intersch ; fac intai max , ii retin pozitia si apoi il pun pe ultima poz; (i=nr de numere)
#include<fstream>
using namespace std;
ifstream fin("grozavesti.in");
ofstream fout("grozavesti.out");
int i, j, n, v[310], aux, k, p, Max, t, x, S[2*301], inter;
int main()
{
fin>>n;
for(i=1; i<=n; i++)
for (j=1;j<=n;j++) {
fin>>x;
if (i==j)
v[i] = x;
}
for (i=n;i>=2;i--)
{
//la pasul i fac maximul din primele i numere
Max = v[1];
p = 1;
for (j=2;j<=i;j++)
if (v[j] > Max)
{
Max = v[j];
p = j;
}
if (p != i) {
aux = v[p];
v[p] = v[i];
v[i] = aux;
S[++k] = p;
S[++k] = i;
inter++;
}
//notez ca am interschimbat linia p cu linia i si coloana p cu coloana i
}
fout<<inter*2<<"\n";
for(i=1; i<=k; i+=2) {
fout<<"L "<<S[i]<<" "<<S[i+1]<<"\n";
fout<<"C "<<S[i]<<" "<<S[i+1]<<"\n";
}
return 0;
}