提交了好几遍没过,最后写完美了,说我超了时间限制,力扣真是麻烦啊
看看别人写的代码
int maxArea(int* height, int heightSize){
int i = 0, j = heightSize - 1, maxarea = 0;
while(i < j){
maxarea = fmax(maxarea, fmin(height[i], height[j]) * (j - i));
if(height[i] < height[j])
i++;
else
j--;
}
return maxarea;
}
int maxArea(int* height, int heightSize){
int maxspace=0;int space=0;
int i=0,j=heightSize-1;
while(i<j){
if(height[i]<height[j]){
space=height[i]*(j-i);
maxspace=(maxspace>space)?maxspace:space;
i++;
}else{
space=height[j]*(j-i);
maxspace=(maxspace>space)?maxspace:space;
j--;
}
}
//printf("%d",maxspace);
return maxspace;
}
由此衍生出现在这两类问题
c语言中求最大数
#include <stdio.h>
#include <math.h>
int main()
{
printf("%lf",fmax(3,5));
return 0;
}
c++中求最大数
#include <iostream>
#include <algorithm>
using namespace std;
int main()
{
int a[3]={1,2,3};
cout<<*max_element(a,a+3);
return 0;
}
附上资料供参考
c++中求最大数
c语言中库函数的使用