11.h 469 B

123456789101112131415161718
  1. #include <math.h>
  2. // 核心优化,每次移动较小的那个,因为移动较大的那个,面积只会越来越小
  3. int maxArea(int* height, int heightSize) {
  4. int left = 0;
  5. int right = heightSize - 1;
  6. int max = 0;
  7. while(left < right){
  8. max = fmax(max,(right-left)*fmin(height[left],height[right]));
  9. if (height[left] < height[right])
  10. {
  11. left++;
  12. }else{
  13. right--;
  14. }
  15. }
  16. return max;
  17. }
备用站点 当前处于降级运行的备用站点,仅供应急访问,数据和功能可能不是最新。