Problem F. L05-06 计算平均值和最大值

编写一个函数计算具有nrows行和ncols列的二维数组中指定列的平均值以及数组各行的和的最大值。

输入

输入共nrows * ncols + 3个整型数,其中前两个数分别是nrows和ncols(0< nrows,ncols<101),第三个数为需要计算平均值的列数,剩下nrows * ncol个数为按行排列的二维数组值,每个值不大于100。

输出

第一个为双精度浮点数表示给定列的平均值(列下标从11开始),第二个数为整型表示数组各行的和的最大值,两个数之间用空格隔开。

样例

标准输入
2 2 1 1 2 3 4
标准输出
2.000000 7

#include <bits/stdc++.h>
using namespace std;
int main() {
	double liezongshu[1000]= {0},hangzongshu[1000]= {0};
	unsigned long long hang,lie,a[500][500],pjlie;//pjlie即为要找到那一列
	cin>>hang>>lie>>pjlie;
	for(int i=1; i<=hang; i++) {
		for(int j=1; j<=lie; j++) {
			cin>>a[i][j];
			hangzongshu[i]+=a[i][j];//求每一行的总数
			liezongshu[j]+=a[i][j];//求每一列的总数
		}
	}
	sort(hangzongshu+1,hangzongshu+1+hang);//按照每一行的总数排升序,所以最后一个是最大的,输出它。
	printf("%.6lf",liezongshu[pjlie]/hang*1.0);
	cout<<" "<<hangzongshu[len];
	return 0;
}
posted @ 2022-10-11 15:40  131452lin  阅读(317)  评论(0)    收藏  举报