前三个过了, 其他全WA
~感觉码风还可以~
#include <bits/stdc++.h>
using namespace std;
const int N = 1005;
int m, n;
int a[N][N], b[N][N];
double ans[N];
int l[N^2], r[N^2];
int f(int i){
double x = 0;
for(int j = 1; j <= m; j++){
x += pow((a[i][j] - a[i][m] / m * 1.0), 2);
}
int y = 0;
for(int j = 1; j <= m; j++){
x += pow((b[i][j] - b[i][m] / m * 1.0), 2);
}
return x + y;
}
int main(){
cin >> n >> m;
for(int i = 1; i <= n; i++){
for(int j = 1; j <= m; j++){
cin >> a[i][j];
a[i][j] += a[i][j - 1];
}
}
for(int i = 1; i <= n; i++){
for(int j = 1; j <= m; j++){
cin >> b[i][j];
b[i][j] += b[i][j - 1];
}
}
for(int i = 1; i <= n; i++){
ans[i] = f(i);
//cout << ans[i]<< endl;
}
int now = 1;
for(int i = 1; i <= n; i++){
for(int j = i; j <= n; j++){
if(ans[i] > ans[j]){
swap(ans[i], ans[j]);
l[now] = i;
r[now] = j;
now++;
}
}
}
cout << now - 1 << endl;
for(int i = 1; i < now; i++){
cout << l[i] << " " << r[i] << endl;
}
return 0;
}