社区讨论

30分求调

B3675[语言月赛 202210] 军训参与者 1已保存回复 1

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
1 条
当前快照
1 份
快照标识符
@mcjxko1c
此快照首次捕获于
2025/07/01 10:50
8 个月前
此快照最后确认于
2025/11/04 06:51
4 个月前
查看原帖
CPP
#include<bits/stdc++.h>
using namespace std;
int a[1005][1005],b[1005][1005],n,m,K,x[1005],y[1005];
double f[1005],avea[1005],aveb[1005],vara[1005],varb[1005];
int main(){
    scanf("%d%d",&m,&n);
    for(int i=1;i<=n;++i){
        for(int j=1;j<=m;++j){
            scanf("%d",&a[i][j]);
            avea[i]+=a[i][j];
        }
        avea[i]/=m;
    }
    for(int i=1;i<=n;++i){
        for(int j=1;j<=m;++j){
            scanf("%d",&b[i][j]);
            aveb[i]+=b[i][j];
        }
        aveb[i]/=m;
    }
    for(int i=1;i<=n;++i){
        for(int j=1;j<=m;++j){
            vara[i]+=(a[i][j]-avea[i])*(a[i][j]-avea[i]);
            varb[i]+=(b[i][j]-aveb[i])*(b[i][j]-aveb[i]);
        }
        f[i]=(vara[i]+varb[i])/m;
    }
    for(int j=1;j<n;++j){
        for(int i=1;i<n;++i){
            if(f[i]>f[i+1]){
                ++K;
                swap(f[i],f[i+1]);
                x[K]=i,y[K]=i+1;
            }
        }
    }
    printf("%d\n",K);
    for(int i=1;i<=K;++i){
        printf("%d %d\n",x[i],y[i]);
    }
}
WA:4~10,kk 过大

回复

1 条回复,欢迎继续交流。

正在加载回复...