Pagini recente » Cod sursa (job #2721814) | Cod sursa (job #751874) | Cod sursa (job #2292453) | Cod sursa (job #2515084) | Cod sursa (job #1718165)
#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> > v1 , v2 , ans;
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(make_pair(x , i - 1));
v2.push_back(make_pair(x , i - 1));
}
}
}
sort (v2.begin() , v2.end());
int nr = v1.size();
for (int i = 0; i < nr; ++i) {
if (v1[i].first != v2[i].first) {
ans.push_back(make_pair(i + 1 , v2[i].second + 1));
swap(v1[v1[i].second] , v1[v2[i].second]);
}
}
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;
}