Container With Most Water
2015-10-11 04:50
471 查看
题目
Given n non-negative integers a1, a2,..., an, where each represents a point at coordinate (i, ai). n vertical
lines are drawn such that the two endpoints of line i is at (i, ai) and (i,
0). Find two lines, which together with x-axis forms a container, such that the container contains the most water.
Note: You may not slant the container.
解题思路
面积只看边界的两条线,和中间的线没关系。两个指针i,j分别指向头和尾,如果头小,i++,否则j++。代码
public class Solution { public int maxArea(int[] height) { int i=0; int j=height.length-1; int max=0; while(j>i) { int tmp=height[i]<=height[j]?height[i]:height[j]; if(tmp*(j-i)>max) max=tmp*(j-i); if(height[i]<=height[j]) ++i; else --j; } return max; } }
运行结果
相关文章推荐
- Rails读书笔记第二章
- Rails读书笔记第一章
- NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9802)
- LeetCode-Contains Duplicate III
- use `free` to check available memory
- LeetCode-Contains Duplicate II
- LeetCode-Contains Duplicate 217
- http://blog.csdn.net/liulina603/article/details/8617281
- Codeforces Round #323 (Div. 2) D.Once Again...(582B)
- tools:context=".MainActivity的作用
- LeetCode-Contains Duplicate II
- LightOJ 1138 Trailing Zeroes (III)
- WinMain与WndProc以及窗口诞生过程总结
- CClientDC和CPaintDC、CWindowsDC之间的联系和区别
- *SocketException: recvfrom failed: ECONNRESET (Connection reset by peer)
- 17.1.1.4 Obtaining the Replication Master Binary Log Coordinate
- HDU 4810 Wall Painting
- HDU 5228 ZCC loves straight flush
- 生产环境 分区做raid
- failed command: READ DMA