leetcode python 042收集雨水

‘‘‘
给定n个非负整数表示每个条的宽度为1的高程图,计算下雨后能够捕获多少水。
例如,
鉴于[0,1,0,2,1,0,1,3,2,1,2,1],返回6。
这个题要先算出盛满水后的高程图,减去前者就是雨水。
盛水多高取决于左右最高的两处低的一方。
‘‘‘
l1=[0,1,0,2,1,0,1,3,2,1,2,1]
w=[]
for i in range(len(l1)):
    w.append(min(max(l1[0:i+1]),max(l1[i:]))-l1[i])
print(‘收集雨水:‘,sum(w))

原文地址:https://www.cnblogs.com/offline-ant/p/9535896.html

时间: 2024-11-09 05:16:46

leetcode python 042收集雨水的相关文章

[LeetCode]101. Trapping Rain Water收集雨水

Given n non-negative integers representing an elevation map where the width of each bar is 1, compute how much water it is able to trap after raining. For example, Given [0,1,0,2,1,0,1,3,2,1,2,1], return 6. The above elevation map is represented by a

【LeetCode】042 Trapping Rain Water

题目: Given n non-negative integers representing an elevation map where the width of each bar is 1, compute how much water it is able to trap after raining. For example, Given [0,1,0,2,1,0,1,3,2,1,2,1], return 6. The above elevation map is represented

收集雨水问题

直方图收集雨水问题: 给定n个非负整数,表示直方图的方柱的高度,同时,每个方柱的宽度假定都为1,若这样形状的容器收集雨水,可以盛多少雨水. 如:输入0,1,0,2,1,0,1,3,2,1,2,1:返回为6. 如图所示: 程序实现: 1 #include <iostream> 2 using namespace std; 3 4 int TrappingRainWater(int A[],int n){ 5 int SecHight = 0;//当前找到的第二大数 6 int left = 0;

[Leetcode]@python 62. Unique Paths

题目链接:https://leetcode.com/problems/unique-paths/ 题目大意:给定n.m,在mxn的矩阵中,从(0,0)走到(m-1,n-1)一共有多少种法(只能往下和往右走) 解题思路:从(0,0)到(m-1,n-1)一共要走m - 1次向下,n-1次向右.也就是在n + m - 2次中选出m-1次向下,也就是C(m + n - 2,m-1) class Solution(object): def uniquePaths(self, m, n): ""&

Pascal&#39;s triangle II Leetcode Python

Given an index k, return the kth row of the Pascal's triangle. For example, given k = 3, Return [1,3,3,1]. Note: Could you optimize your algorithm to use only O(k) extra space? 这题和前面一题的区别在于不用返回所有解,只需要返回index对应行就行.做法和前面的一样定义一个currow 和prerow class Solu

python模块收集

shutil:用于拷贝目录树.删除目录树,类似os.remove/os.rmdir fnmatch:通过shell glob去匹配字符串.文件名 python模块收集

LeetCode Python 位操作 1

Python 位操作: 按位与 &, 按位或 | 体会不到 按位异或 ^ num ^ num = 0 左移 << num << 1 == num * 2**1 右移 >> num >> 2 == num / 2**2 取反 ~ ~num == -(num + 1) 1. Single Number Given an array of integers, every element appears twice except for one. Find

Python:收集IP信息

下面通过两种方法实现收集IP信息 1.通过 ifconfig 命令输出IP信息,并以"\n\n"切片分成不同的网卡块 2.通过 ifconfig 命令输出IP信息,并以第一个字符在顶格的方式切片分成不同的网卡块 # vim ip1.py #!/usr/bin/env python from subprocess import Popen, PIPE def getIfconfig(): p = Popen(['ifconfig'], stdout=PIPE) data = p.stdo

python 日志收集服务器

引因:  python 的日志收集服务是线程安全的(对同一个文件的写入,使用了锁),但是对于多进程的情况,它是无法处理的.python 官方文档推荐的做法是,使用tcp 服务器专门用于日志的收集,以确保对的文件的写入是安全的.这里提供了日志收集服务器基于twisted的实现,可供参考,程序在centos上进行了测试,并可用于生产环境 当client 和server 在一台机器上时,每秒可以处理6000条日志记录 #!/usr/bin/env python # -*- coding:utf-8 -