列表

详情


NC220713. 这是一道难题

描述

小蓝给学生们组织了一场考试,卷面总分为100分,每个学生的得分都是一个0100的整数。

请计算这次考试的最高分、最低分和平均分。

输入描述

输入的第一行包含一个整数n,表示考试人数。接下来n行,每行包含一个0至100的整数,表示一个学生的得分。

输出描述

输出三行。

第一行包含一个整数,表示最高分。

第二行包含一个整数,表示最低分。

第三行包含一个实数,四舍五入保留正好两位小数,表示平均分。

示例1

输入:

7
80
92
56
74
88
99
10

输出:

99
10
71.29

原站题解

上次编辑到这里,代码来自缓存 点击恢复默认模板

C(gcc 7.5.0) 解法, 执行用时: 3ms, 内存消耗: 384K, 提交时间: 2022-10-20 20:35:41

#include<stdio.h>

int main()
{
	int n,a,b=0,ret=0,c=100,d;
    double s;

	scanf("%d",&n);
    d=n;
	while(n--)
	{
		scanf("%d",&a);
		ret+=a;
		if(a>b)b=a;
		if(a<c)c=a;
	}
	s=ret*1.0/d;
	printf("%d\n%d\n%.2f",b,c,s);
	return 0;
}

C++(clang++ 11.0.1) 解法, 执行用时: 4ms, 内存消耗: 476K, 提交时间: 2023-04-08 10:02:52

#include<iostream>
using namespace std;
int main(){
	int n,a,b,s;
	double m=0;
	cin>>n>>a;
	b=a,m+=a;
	for(int i=1;i<n;i++){
		cin>>s;
		if(s>a) a=s;
		if(s<b) b=s;
		m+=s;
	}
	printf("%d\n%d\n%.2lf",a,b,m/n);
	return 0;
}

Python3(3.9) 解法, 执行用时: 30ms, 内存消耗: 2836K, 提交时间: 2021-04-08 19:38:08

n=int(input())
ls=[]
for i in range(n):
    ls.append(int(input()))
print(max(ls))
print(min(ls))
print('%.2f'%(sum(ls)/n))

上一题