蓝桥杯 题目一最大最小值 C++算法提高 HERODING的蓝桥杯之路

资源限制
时间限制:1.0s 内存限制:1.0GB
问题描述
  给定 N 个整数,请你找出这 N 个数中最大的那个和最小的那个。
输入格式
  第一行包含一个正整数 N 。(1 ≤ N ≤ 10000)。
  第二行为 N 个用空格隔开的整数,每个数的绝对值不超过 1000000。
输出格式
  输出仅一行,包含两个整数 x,y,x 表示 N 个数中的最大值,y 表示 N 个数中的最小值。x,y 之间用一个空格隔开。
样例输入
4
2 0 1 2
样例输出
2 0

解题思路:
这道题应该是这个系列最简单的题目了,但是还是有要注意的地方,比如我提前先把第一个数输入,然后让x,y等于这个数,这样的好处是让你的初始值一定在输入的数之中,避免极端情况的出现,代码如下:

#include<bits/stdc++.h> 

using namespace std;

int main(){
	int a[10000];
	int N;
	cin >> N;
	cin >> a[0];
	int x, y;
	x = a[0];
	y = a[0];
	for(int i = 1; i < N; i ++){
		cin >> a[i];
		if(x < a[i]){
			x = a[i];
		}
		if(y > a[i]){
			y = a[i];
		}
	}
	cout << x << " " << y;
	return 0;
} 

猜你喜欢

转载自blog.csdn.net/HERODING23/article/details/107347307