为什么有问题?
查看原帖
为什么有问题?
741116
temvlg楼主2023/3/1 18:58

是这样的,我们学校的奥赛有个考试,题是这个,样例输入和输出都对,在洛谷也100分,但是学校的系统给的分是0,老师给我试了试输入

7 6
1 1 1 1 1 1
1 1 1 1 1 1
1 1 1 1 1 1
1 1 1 1 1 1
1 1 1 1 1 1
1 1 1 1 1 1
1 1 1 1 1 1

出来的答案是1.25,也就是不对 可以给我看看哪里有问题吗?感谢

#include<bits/stdc++.h>
using namespace std;
int main(){
	int n,m;
	cin>>n>>m;
	int a[n+1][m+1];
	int zd[n+1],zx[n+1];
	int wow[n+1];
	for(int i=1;i<=n;i++){
		wow[i]=0;
	}
	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++){
		int tems=114514,temb=-1;
		for(int j=1;j<=m;j++){
			if(a[i][j]>=temb){
				zd[i]=j;
				temb=a[i][j];
			}
			if(a[i][j]<=tems){
				zx[i]=j;
				tems=a[i][j];
			}
		}
	}
	for(int i=1;i<=n;i++){
		for(int j=1;j<=m;j++){
			if(j!=zd[i]&&j!=zx[i]) wow[i]+=a[i][j];
		}
	}
	int nm=-114514,s=0;
	for(int i=1;i<=n;i++){
		if(wow[i]>=nm){
			nm=wow[i];
			s=i;
		}
	}
	float qwq;
	qwq=wow[s]/1.0/(m-2);
	printf("%.2f",qwq);
}
2023/3/1 18:58
加载中...