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

摄影师网站html5seo课程培训

摄影师网站html5,seo课程培训,全国网站建设公司,亳州做网站Leetcode 3556. Sum of Largest Prime Substrings 1. 解题思路2. 代码实现3. 算法优化 题目链接:3556. Sum of Largest Prime Substrings 1. 解题思路 这一题毕竟只是这一次双周赛的第一题,虽然标记为medium的题目,但是思路上还是非常简单…
  • Leetcode 3556. Sum of Largest Prime Substrings
    • 1. 解题思路
    • 2. 代码实现
    • 3. 算法优化
  • 题目链接:3556. Sum of Largest Prime Substrings

1. 解题思路

这一题毕竟只是这一次双周赛的第一题,虽然标记为medium的题目,但是思路上还是非常简单的,只需要对所有的数字进行一下遍历,然后考察一下其是否为质数即可。

虽然这样遍历的算法复杂度会是 O ( N 2 ) O(N^2) O(N2),但由于数字的最大位数只有10位,因此无伤大雅。

问题的真正麻烦的在于对任意一个数如何判断它是否是质数,如果真的暴力去求解,那么需要的时间复杂度就会是 O ( N l o g N ) O(NlogN) O(NlogN),其中 N N N是数的大小,考虑到 N N N可能是一个10位数,这显然太大了,因此我们需要对这个进行一下优化,具体来说就是对 N N N进行一下开方,只要比 N \sqrt{N} N 小的所有质数均无法整除 N N N,那么 N N N必为一个质数。

2. 代码实现

给出python代码实现如下:

class Solution:def sumOfLargestPrimes(self, s: str) -> int:def is_prime(num):if num == 1:return Falsem = min(ceil(math.sqrt(num)) + 1, num)status = [0 for _ in range(m)]for i in range(2, m):if status[i] == 1:continueif num % i == 0:return Falsefor j in range(i, m, i):status[j] = 1return Trueprimes = set()n = len(s)for i in range(n):for j in range(i+1, n+1):num = int(s[i:j])if is_prime(num):primes.add(num)primes = sorted(primes, reverse=True)[:3]return sum(primes) if len(primes) > 0 else 0

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

3. 算法优化

进一步的,我们可以将质数的计算部分提取出来作为global变量,这样可以进一步减少重复计算,从而优化效率。

给出优化后的代码实现如下:

def get_primes(n):primes = set()status = [0 for _ in range(n+1)]for i in range(2, n+1):if status[i] == 0:primes.add(i)for j in range(i, n+1, i):status[j] = 1return primesPRIMES = get_primes(400000)class Solution:def sumOfLargestPrimes(self, s: str) -> int:def is_prime(num):if num == 1:return Falseif num in PRIMES:return Truefor p in PRIMES:if num % p == 0:return Falsereturn Trueprimes = set()n = len(s)for i in range(n):for j in range(i+1, n+1):num = int(s[i:j])if is_prime(num):primes.add(num)primes = sorted(primes, reverse=True)[:3]return sum(primes) if len(primes) > 0 else 0

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

http://www.dtcms.com/wzjs/328080.html

相关文章:

  • 机关网站建设和运行情况汇报宁波seo网络推广咨询热线
  • 合肥网站搜索引擎优化合肥网站建设公司
  • 做视频赚钱的好网站上海优化公司
  • 建网站后如何维护seo是怎么优化
  • 网站营销理念网络营销seo是什么意思
  • 办公家具网站建设费用抖音seo代理
  • 变性人做网站win10优化大师好用吗
  • 做亚马逊有哪些网站可以清货福州网站seo优化公司
  • 流程图制作网站杭州网站设计
  • 南油网站建设上海百度推广优化排名
  • 做写真网站合法吗关键词排名点击软件网站
  • 做韩国外贸网站国家免费职业培训平台
  • 网站开发过程前端后端长尾词seo排名
  • 山东企业网站建设公司有人百度看片吗
  • 个人博客网站开发背景论文百度应用宝
  • 客服网站制作seo比较好的公司
  • 网站建设 html5如何在网上推广自己的公司
  • 建设网站花都区搜索引擎简称seo
  • 贵州做网站怎么推广灰色行业关键词优化
  • 图片上传 网站建设教学视频教程龙岗seo网络推广
  • 石家庄外贸网站制作做百度线上推广
  • python做网站安全性热门推广软件
  • 苏州百度搜索排名优化seo外链推广平台
  • 织梦系统做的网站忘记登录密码淘宝关键词排名查询工具
  • 有没有做粤菜的网站软文世界
  • 郑州做网站建设公司windows优化大师在哪里
  • html 教程重庆seo按天收费
  • 郑州哪里培训网站建设优化好一点在线刷高质量外链
  • 网站后台怎么替换图片精准客户信息一条多少钱
  • 宣化网站制作公司聊石家庄seo