bLue 是个爱看书的孩纸(误),一天他买了 n 本书,并按照购买的顺序把书摞放在桌上(后买的书放在先买的书上面)。
几天后他突然决定看书了,于是他每次都拿最上面的一本书看,看完就放到一边。bLue 看完每本书就会获得这本书所能提供的智力值,他想知道在一天内看的所有 m 本书中,单本书能获得的最高的智力值是多少。
Input
输入数据有多组(数据组数不超过 100),到 EOF 结束。
对于每组数据:
第一行输入两个用空格分隔的整数 n, m (1 <= n <= 10000, 1 <= m <= n),分别表示 bLue 买来的书的数量和他在一天内看的书的数量。
第二行包含 n 个整数 ai (-100 <= ai <= 100),表示每本书能提供的智力值,输入顺序即是按照 bLue 买书的顺序。
Output
对于每组数据,输出一行,表示在一天所看的 m 本书中,单本书能获得的最高智力值是多少。
Sample Input
5 2
1 2 3 4 5
Sample Output
5
#include <stdio.h>
#include<stdlib.h>
#include<math.h>
#define INF 0x3f3f3f3f//定义一个无穷大
int max(int a,int b)
{
return a>b?a:b;
}
int main()
{
int a[100010],i,n,m;
while(~scanf("%d%d",&n,&m))
{
for(i=0;i<n;i++)
scanf("%d",&a[i]);
int ans=-INF;//无穷小
for(i=n-1;i>=n-m;i--)
ans=max(ans,a[i]);
printf("%d\n",ans);
}
return 0;
}