30pts 代码:
#include <bits/stdc++.h>
using namespace std;
long long n,m,a[1010][1010],b[1010][1010];
long double f[1010],avea[1010],aveb[1010];
int main(){
cin>>m>>n;
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
cin>>a[i][j];
}
}
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
cin>>b[i][j];
}
}
for(int i=1;i<=n;i++){
long long suma=0;
for(int j=1;j<=m;j++) suma+=a[i][j];
avea[i]=(double)suma/m;
long long sumb=0;
for(int j=1;j<=m;j++) sumb+=b[i][j];
aveb[i]=(double)sumb/m;
}
for(int i=1;i<=n;i++){
long long sumc=0;
for(int j=1;j<=m;j++){
sumc+=(a[i][j]-avea[i])*(a[i][j]-avea[i]);
}
f[i]+=(double)sumc/m;
long long sumd=0;
for(int j=1;j<=m;j++){
sumd+=(b[i][j]-aveb[i])*(b[i][j]-aveb[i]);
}
f[i]+=(double)sumd/m;
}
int cnt=0;
for(int i=1;i<=n-1;i++){
for(int j=i+1;j<=n;j++){
if(f[j]<f[i]){
cnt++;
}
}
}
cout<<cnt<<endl;
for(int i=1;i<=n-1;i++){
for(int j=1;j<=n-i-1;j++){
if(f[j]<f[i]){
swap(f[i],f[j]);
cout<<i<<' '<<j<<endl;
}
}
}
return 0;
}
除了前三个不用交换的点,都错了。 信息是Wrong Answer.wrong output format Unexpected end of file - int32 expected。