题目描述
递归求n个数的最大值。
输入
共两行
第1行,n (n<=100)
第2行,n个整数,用空格隔开
输出
最大值
样例输入
3
1 3 2
样例输出
3
代码
#include <bits/stdc++.h>
using namespace std;
int a[105];
int getmax(int l,int r)
{
if(l==r) return a[l];
int mid=(l+r)/2;
int mx1=getmax(l,mid);
int mx2=getmax(mid+1,r);
return max(mx1,mx2);
}
int main()
{
int n;
cin>>n;
int max;
for(int i=1;i<=n;i++)
cin>>a[i];
cout<<getmax(1,n)<<endl;
return 0;
}
相较于前篇的~最大值~-CSDN博客递归算法,本片为分治,性能差不多,看个人喜好。