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

吉林省住房建设厅网站国际局势最新消息今天

吉林省住房建设厅网站,国际局势最新消息今天,东营做网站排名,视频播放网站建设LeetCode笔记:Weekly Contest 332 1. 题目一 1. 解题思路2. 代码实现 2. 题目二 1. 解题思路2. 代码实现 3. 题目三 1. 解题思路2. 代码实现 4. 题目四 1. 解题思路2. 代码实现 比赛链接:https://leetcode.com/contest/weekly-contest-332/ 1. 题目一…
  • LeetCode笔记:Weekly Contest 332
    • 1. 题目一
      • 1. 解题思路
      • 2. 代码实现
    • 2. 题目二
      • 1. 解题思路
      • 2. 代码实现
    • 3. 题目三
      • 1. 解题思路
      • 2. 代码实现
    • 4. 题目四
      • 1. 解题思路
      • 2. 代码实现
  • 比赛链接:https://leetcode.com/contest/weekly-contest-332/

1. 题目一

给出题目一的试题链接如下:

  • 2562. Find the Array Concatenation Value

1. 解题思路

这一题按照题意不断地取首尾元素合并求和一下即可。

2. 代码实现

给出python代码实现如下:

class Solution:def findTheArrayConcVal(self, nums: List[int]) -> int:i, j = 0, len(nums)-1res = 0while i < j:res += int(str(nums[i]) + str(nums[j]))i += 1j -= 1if i == j:res += nums[i]return res

提交代码评测得到:耗时56ms,占用内存13.9MB。

2. 题目二

给出题目二的试题链接如下:

  • 2563. Count the Number of Fair Pairs

1. 解题思路

这一题我们只需要将原数组进行排序,然后找到上下限元素之间的区间即可,这个可以通过二分搜索来快速得到。

唯一需要注意的就是如果两倍自身也在范围内的话需要刨除自身。

2. 代码实现

给出python代码实现如下:

class Solution:def countFairPairs(self, nums: List[int], lower: int, upper: int) -> int:nums = sorted(nums)res = 0for i, x in enumerate(nums):lb = bisect.bisect_left(nums, lower - x)rb = bisect.bisect_right(nums, upper - x)if lower-x <= x <= upper-x:res += rb - lb -1else:res += rb - lbreturn res // 2 

提交代码评测得到:耗时908ms,占用内存29MB。

3. 题目三

给出题目三的试题链接如下:

  • 2564. Substring XOR Queries

1. 解题思路

因为a^x^x=a,因此,对于每一个query,我们事实上就是要找到query当中两数的异或值在给出的字符串当中出现的最早的位置即可。

但是这个query会很繁琐,所以我们事先将字符串当中所有出现的有效字符串全部保存起来,从而加速检索速度。

2. 代码实现

给出python代码实现如下:

class Solution:def substringXorQueries(self, s: str, queries: List[List[int]]) -> List[List[int]]:n = len(s)mem = {}for i in range(n):if s[i] == "0":if "0" not in mem:mem["0"] = [i, i]continuefor j in range(min(i+30, n), i, -1):sub = s[i:j]if sub in mem:breakmem[sub] = [i, j-1]res = [mem.get(bin(x^y)[2:], [-1, -1]) for x, y in queries]return res

提交代码评测得到:耗时1359ms,占用内存79.7MB。

4. 题目四

给出题目四的试题链接如下:

  • 2565. Subsequence With the Minimum Score

1. 解题思路

这一题因为只考虑删除t中的字符的头尾位置,使得其为s的子串,而不需要考虑其中间的字符删除多少。

因此,我们就是要考察t当中头尾子串保留的长度即可。

也就是说,我们考虑要覆盖t中头部的每一串子串所需要的s当中的头部长度,然后同步考察要覆盖t中尾部每一个子串所需要的s当中的尾部的长度。

如果两者不交叠,那么两者之间的长度就是一组可行的删除方法,然后我们从中取出最小值即可。

2. 代码实现

给出python代码实现如下:

class Solution:def minimumScore(self, s: str, t: str) -> int:n, m = len(s), len(t)l2r = [n for _ in range(m)]i = 0for j in range(m):while i < n and s[i] != t[j]:i += 1if i == n:breakl2r[j] = ii += 1r2l = [-1 for _ in range(m)]i = n-1for j in range(m-1, -1, -1):while i >= 0 and s[i] != t[j]:i -= 1if i == -1:breakr2l[j] = ii -= 1res = min(bisect.bisect_left(r2l, 0), m-bisect.bisect_left(l2r, n))for i, idx in enumerate(l2r):if idx <= r2l[i]:return 0elif idx == n:if r2l[i] >= 0:res = min(res, i)else:j = bisect.bisect_left(r2l, idx+1)if j > i:res = min(res, j-i-1)return res

提交代码评测得到:耗时209ms,占用内存19.6MB。

http://www.15wanjia.com/news/13989.html

相关文章:

  • 企业官方网站的作用注册网址
  • 整形网站源码宁波关键词优化企业网站建设
  • 下班后做兼职任务网站aso安卓优化公司
  • 简单描述网站建设流程seo专业优化公司
  • 评价一个网站新人做外贸怎么找国外客户
  • 自己搭建云平台seo搜索优化邵阳
  • 用vs做网站表格向上居中知乎seo排名的搜软件
  • 大德通众包 做网站怎么样百度推广外推联系方式
  • 做网站的电脑自带软件是什么互联网企业营销策略
  • 做pcr查基因序列的网站seo排名快速
  • 企业网站信息化建设深圳白帽优化
  • 龙口做网站案例百度导航是哪个国家的
  • 博士后是否可以做网站负责人线上运营推广
  • 饰品做商城网站模式抖音seo推荐算法
  • 口碑好的高密网站建设seo排名优化培训
  • 微信公众平台官方网站登录电商软文范例300字
  • 常见的旅游网络营销方式宁波seo教程app推广
  • 网站排名优化工具网站软文是什么
  • dede网站入侵教程网络营销好找工作吗
  • 泰安网站建设课程报告上海网站seo
  • wordpress导航菜单下拉seo优化实训总结
  • 深圳做app网站制作seo怎样才能优化网站
  • 行业公司网站建设在什么网站可以免费
  • 大团企业网站制作推广方案怎么写模板
  • 在线建站网站成都官网seo费用
  • 做服饰的有哪些网站长沙优化科技有限公司
  • 2017年政府网站建设张掖seo
  • 做网站步骤正规网络推广服务
  • 东莞个人网站制作百度推广多少钱一个月
  • 宁波网站制作工具石家庄seo关键词排名