蒟蒻30分求助,悬赏关注!
查看原帖
蒟蒻30分求助,悬赏关注!
769006
crzcqh楼主2023/7/21 18:17
#include<bits/stdc++.h>
using namespace std;
int m,n;
double sum,tv;
double a[1010][1010],b[1010][1010],v[1010];
int l[1010],k[1010],cnt;
int main(){
	cin>>m>>n;
	for(int i=1;i<=n;i++){
		sum=tv=0.0;
		for(int j=1;j<=m;j++){
			cin>>a[i][j];
			sum+=a[i][j];
		}
		sum/=m;//平均值 
		for(int j=1;j<=m;j++){
			tv+=pow(a[i][j]-sum,2); 
		}
		tv/=m;
		v[i]=tv;
	}
	for(int i=1;i<=n;i++){
		sum=tv=0.0;
		for(int j=1;j<=m;j++){
			cin>>b[i][j];
			sum+=b[i][j];
		}
		sum/=m;//平均值 
		for(int j=1;j<=m;j++){
			tv+=pow(b[i][j]-sum,2); 
		}
		tv/=m;
		v[i]+=tv;
	}
	for(int i=1;i<=n;i++){
		for(int j=1;j<=n-i;j++){
			if(v[j]>v[j+1]){
				swap(v[j],v[j+1]);
				l[++cnt]=j;
				k[cnt]=j+1; 
			}
		}
	}
	cout<<cnt<<endl;
	for(int i=1;i<=cnt;i++){
		cout<<l[i]<<' '<<k[i]<<endl;
	}
	return 0;
}

能过样例

2023/7/21 18:17
加载中...