当前位置: 首页 > news >正文

网页设计茶叶网站建设外贸网络推广公司

网页设计茶叶网站建设,外贸网络推广公司,什么是理财北京网站建设公司,如何自建wordpress记录了初步解题思路 以及本地实现代码;并不一定为最优 也希望大家能一起探讨 一起进步 目录 9/11 630. 课程表 III9/12 1462. 课程表 IV9/13 2596. 检查骑士巡视方案9/14 1222. 可以攻击国王的皇后9/15 LCP 50. 宝石补给9/16 198. 打家劫舍9/17 9/11 630. 课程表 II…

记录了初步解题思路 以及本地实现代码;并不一定为最优 也希望大家能一起探讨 一起进步


目录

      • 9/11 630. 课程表 III
      • 9/12 1462. 课程表 IV
      • 9/13 2596. 检查骑士巡视方案
      • 9/14 1222. 可以攻击国王的皇后
      • 9/15 LCP 50. 宝石补给
      • 9/16 198. 打家劫舍
      • 9/17


9/11 630. 课程表 III

将期限日期从小到大排序
将耗时放入大顶堆中 如果当前耗时无法满足 但是比堆中最大值小时 进行替换

def scheduleCourse(courses):""":type courses: List[List[int]]:rtype: int"""import heapql=[]heapq.heapify(l)courses.sort(key = lambda x:x[1])now = 0for d,last in courses:if now+d<=last:now +=dheapq.heappush(l,-d)elif l and -l[0]>d:now = now+l[0]+dheapq.heappop(l)heapq.heappush(l,-d)return len(l)

9/12 1462. 课程表 IV

m[i][j]记录i是否依赖j
dg[i]记录当前i是否还有依赖未考虑
g[i]记录i依赖的课程
bfs l中存放当前无课程依赖可以考虑的课程

def checkIfPrerequisite(numCourses, prerequisites, queries):""":type numCourses: int:type prerequisites: List[List[int]]:type queries: List[List[int]]:rtype: List[bool]"""m = [[False]*numCourses for _ in range(numCourses)]dg = [0]*numCoursesg = [[] for _ in range(numCourses)]for p in prerequisites:dg[p[1]] +=1g[p[0]].append(p[1])l = []for i in range(numCourses):if dg[i]==0:l.append(i)while l:tmp = []for cur in l:for nx in g[cur]:m[cur][nx] = Truefor i in range(numCourses):m[i][nx] = m[i][cur] or m[i][nx]dg[nx]-=1if dg[nx]==0:tmp.append(nx)l= tmpans = []for q in queries:ans.append(m[q[0]][q[1]])return ans

9/13 2596. 检查骑士巡视方案

规定从左上角出发 判断grid[0][0]是否为0
从当前位置向八个方向遍历是否能够到达下一个点

def checkValidGrid(grid):""":type grid: List[List[int]]:rtype: bool"""x,y=0,0n = len(grid)if grid[0][0]!=0:return Falsesteps=[(2,1),(2,-1),(-2,1),(-2,-1),(1,2),(1,-2),(-1,2),(-1,-2)]cur = 0while cur<n*n-1:tag = Truefor i,j in steps:nx,ny = x+i,y+jif 0<=nx<n and 0<=ny<n and grid[nx][ny]==cur+1:cur +=1x,y=nx,nytag = Falsebreakif tag:return Falsereturn True

9/14 1222. 可以攻击国王的皇后

mem记录八个方向皇后可以攻击到国王的最近距离

def queensAttacktheKing(queens, king):""":type queens: List[List[int]]:type king: List[int]:rtype: List[List[int]]"""mem = {}    for x,y in queens:i,j=0,0v = 0if x==king[0]:v = abs(y-king[1])j = (y-king[1])//velif y==king[1]:v = abs(x-king[0])i = (x-king[0])//velse:v = abs(x-king[0])if v!=abs(y-king[1]):continuei = (x-king[0])//vj = (y-king[1])//vif (i,j) not in mem:mem[(i,j)] = velse:if v<mem[(i,j)]:mem[(i,j)] = vans = []for (i,j),v in mem.items():ans.append([king[0]+i*v,king[1]+j*v])return ans

9/15 LCP 50. 宝石补给

按照规则依次赠送

def giveGem(gem, operations):""":type gem: List[int]:type operations: List[List[int]]:rtype: int"""for x,y in operations:v = gem[x]//2gem[x]-=vgem[y]+=vreturn max(gem)-min(gem)

9/16 198. 打家劫舍

使用一个maxlist记录 进入当前x位置的房间能够得到的最大价值
可知前一个位置无法获取 所以在x时
可以通过[0,x-2]之间的最大值加上x的值获得该位置最大值
而在maxlist中最大的值必定是在最后两个位置 n,n-1
因为位置n的值必定大于n-2的值 所以我们只要比较maxlist中x-3,x-2这两个位置的值
就可以得到[0,x-2]之间的最大值

def rob(nums):""":type nums: List[int]:rtype: int"""maxlist=[]res = 0for i in range(len(nums)):if i>2:tmp = max(maxlist[i-3],maxlist[i-2])+nums[i]maxlist.append(tmp)elif i==2:tmp = maxlist[0]+nums[i]maxlist.append(tmp)else:tmp = nums[i]maxlist.append(nums[i])res = max(res,tmp)return res

9/17


http://www.zhongyajixie.com/news/45601.html

相关文章:

  • 扬州做网站的科技公司网址大全名称
  • 品牌型网站制作价格快速排名新
  • 网站js聊天代码网络营销策划方案的目的
  • 做电子元器件销售什么网站好seo代码优化包括哪些
  • 政府网站建设的概念免费广告制作软件
  • 做八闽最好的中学网站百度手机助手
  • 免费注册域名网站推荐网络营销策划方案框架
  • 网上学习做网站客服网站搭建
  • 网站子目录怎么做反向代理设置北京正规seo搜索引擎优化价格
  • 法院网站建设调研网页设计一般用什么软件
  • 网站建站行业舆情网站直接打开的软件
  • 青岛城阳软件网站开发关键词seo资源
  • 安妮导刊 wordpress郑州网络优化实力乐云seo
  • 西城网站建设公司武汉百捷集团百度推广服务有限公司
  • 自己接单赚钱app郑州网络seo公司
  • 做建材的哪些网站线上广告推广
  • 线上推广的意义沈阳百度seo关键词优化排名
  • 网站的点击率怎么查爱站网seo工具
  • rar在线解压缩网站sem优化推广
  • 咸阳鑫承网站建设宁波seo关键词排名优化
  • 网站空间 按流量计费平台优化是指什么
  • 做网站用什么软件语言宁德市教育局官网
  • 做外贸的网站b2c云搜索系统
  • 创建网站的四个步骤是怎样在百度上推广
  • wordpress 跳转首页app排名优化
  • 临沂企业建站程序b2b
  • 深圳品牌设计公司介绍如何利用seo赚钱
  • 橙子建站广告怎么收费seo搜索引擎优化实训
  • 有哪些网站可以学做糕点的营销案例网站
  • 长春做公司网站如何对seo进行优化