这是初赛最简单的一道题,可以说秒解。
有M个(M<=10000)10进制整数,求出这M个数字中的最大值和最小值。每个数字的绝对值不大于1000000。
【输入说明】
在程序当前路径下存在文本文件execute.stdin,程序从execute.stdin中读取输入数据。
execute.stdin中的数字用空格隔开。
【输出说明】
输出包括两个整数,分别为给定M个数中的最大值与最小值,用空格隔开。
【样例】
execute.stdin内容为:
1 2 3 4 5 6 7 8 9
预期输出:
9 1
#include <iostream>
#include <fstream>
#include <cstdlib>
#include <vector>
using namespace std;
int main()
{
ifstream inf("execute.stdin");
double d[100];
int k = 0;
while (inf >> d[k])
++k;
int i, tmp;
bool flag;
for (i = 1; i < k; ++i)
{
flag = false;
for (int j = 0; j <k - i; ++j)
if (d[j + 1]>d[j])
{
tmp = d[j];
d[j] = d[j + 1];
d[j + 1] = tmp;
flag = true;
}
if (!flag) break;
}
cout << d[0] << " "<<d[k-1];
system("pause");
return 0;
}