#C07L08P02. C07.L08.STL之集合.引例1.最高的分数

C07.L08.STL之集合.引例1.最高的分数

题目描述

孙老师讲授的《计算概论》这门课期中考试刚刚结束,他想知道考试中取得的最高分数。因为人数比较多,他觉得这件事情交给计算机来做比较方便。你能帮孙老师解决这个问题吗?

输入格式

输入两行,第一行为整数n(1 <= n < 100),表示参加这次考试的人数.

第二行是这n个学生的成绩,相邻两个数之间用单个空格隔开。所有成绩均为0到100之间的整数。

输出格式

输出一个整数,即最高的成绩。

样例

5
85 78 90 99 60
99

以前旧方法

#include<bits/stdc++.h>
using namespace std;
int main()
{
	int MAX=-1;
	int n,x;
	cin>>n;
	for(int i=0;i<n;i++)
	{
		cin>>x;
		MAX = max(MAX,x); 
	}

	cout << MAX;

	return 0;
}

基于STL SET模板的方法

#include<bits/stdc++.h>
using namespace std;
int main()
{
	set <int> s;
	int n,x;
	cin>>n;
	for(int i=0;i<n;i++)
	{
		cin>>x;
		s.insert(x);
	}

	cout << *s.rbegin(); //set内的元素是经过排序的,最后的一个元素是end(),这是一个标志着结束的空元素,end()之前的一个元素是最大的,rbegin()指向的就是这个元素。

	return 0;
}