Pagini recente » Cod sursa (job #1312032) | Cod sursa (job #2390844) | Cod sursa (job #834619) | Romanii medaliati la IOI | Cod sursa (job #1718174)
#include <algorithm>
#include <fstream>
#include <vector>
#include <set>
using namespace std;
ifstream f("grozavesti.in");
ofstream g("grozavesti.out");
int x , n;
vector <pair <int , int> > ans;
vector <int> v1 , v2;
int main() {
f >> n;
for (int i = 1; i <= n; ++i) {
for (int j = 1; j <= n; ++j) {
f >> x;
if (i == j) {
v1.push_back(x);
v2.push_back(x);
}
}
}
sort (v2.begin() , v2.end());
int nr = v1.size();
for (int i = 0; i < nr; ++i) {
if (v1[i] != v2[i]) {
for (int j = i + 1; j < nr; ++j) {
if (v2[i] == v1[j]) {
ans.push_back(make_pair(i + 1, j + 1));
swap(v1[i] , v1[j]);
break;
}
}
}
}
nr = ans.size();
g << 2 * nr << '\n';
for (int i = 0; i < nr; ++i) {
g << "C " << ans[i].first << " " << ans[i].second << '\n' << "L " << ans[i].first << " " << ans[i].second << '\n';
}
return 0;
}