30pts求助
查看原帖
30pts求助
739444
register_long_double楼主2022/11/17 20:51

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。

2022/11/17 20:51
加载中...