同学们都知道,无论哪个语言入门学习时,第一个Sample都是“Hello world!”,我们学习算法,第一个入门的问题也许就是求给定输入的最大或者最小,那么我们今天也来求解这个问题,只不过我们今天需要你求的是指定范围内的最大值。
Input
本问题有多组测试数据,每一组有两行,其中第一行有三个整数n,MIN,MAX(0<n<=10000;-2000<=MIN<=MAX<=2000);三个数中间用空格分开;第二行就是n个整数,数与数之间用空格分开,-10000<=每个数<=10000。
Output
对于每一组输入,输出只有一行,那就是符合要求的最大数(即在所有n个数中,符合大小在MIN和MAX之间,包括MIN、MAX本身,这样条件的最大值),如果没有符合要求的最大数,输出“Error”。
Sample Input
11 50 70
100 -100 30 60 90 -200 69 1000 51 42 -31
2 50 70
100 200
Sample Output
69
Error
代码
#include <bits/stdc++.h>
using namespace std;
int a[10010];
int main()
{
int n;
while(cin>>n)
{
int l,r;
cin>>l>>r;
for(int i=0;i<n;i++)cin>>a[i];
int ans=-90000;
for(int i=0;i<n;i++)
{
if(a[i]<=r&&a[i]>=l)
{
ans=max(ans,a[i]);
}
}
if(ans==-90000)
cout<<"Error"<<endl;
else
cout<<ans<<endl;
}
return 0;
}