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

青海专业网站建设推广平台建设百度服务电话

青海专业网站建设推广平台建设,百度服务电话,宿迁建设局网站,wp做的网站打开域名会跳转到其他网站记录了初步解题思路 以及本地实现代码;并不一定为最优 也希望大家能一起探讨 一起进步 目录 4/7 416. 分割等和子集4/8 3396. 使数组元素互不相同所需的最少操作次数4/9 3375. 使数组的值全部为 K 的最少操作次数4/10 2999. 统计强大整数的数目4/11 2843. 统计对称整…

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


目录

      • 4/7 416. 分割等和子集
      • 4/8 3396. 使数组元素互不相同所需的最少操作次数
      • 4/9 3375. 使数组的值全部为 K 的最少操作次数
      • 4/10 2999. 统计强大整数的数目
      • 4/11 2843. 统计对称整数的数目
      • 4/12 3272. 统计好整数的数目
      • 4/13 1922. 统计好数字的数目


4/7 416. 分割等和子集

和是奇数则不可能
dp[x]判断和为x是否取的到

def canPartition(nums):""":type nums: List[int]:rtype: bool"""x=sum(nums)if x%2:return Falsex//=2dp=[False]*(x+1)dp[0]=Truen=len(nums)for i in range(n):for j in range(x,-1,-1):if j-nums[i]>=0:dp[j]=dp[j] or dp[j-nums[i]]return dp[x]

4/8 3396. 使数组元素互不相同所需的最少操作次数

从后往前找到第一次出现相同元素的位置

def minimumOperations(nums):""":type nums: List[int]:rtype: int"""n=len(nums)s=set()loc=n-1while loc>=0:if nums[loc] in s:breaks.add(nums[loc])loc-=1return 0 if loc==-1 else loc//3+1

4/9 3375. 使数组的值全部为 K 的最少操作次数

如果k大于nums中的最小值 则不可能
只要计算nums中不同数值个数就可以

def minOperations(nums, k):""":type nums: List[int]:type k: int:rtype: int"""if min(nums)<k:return -1s = set(nums)ans = len(s)if k in s:ans-=1return ans

4/10 2999. 统计强大整数的数目

递归
dfs(i,limitl,limith) 表示第i位及之后位置能够组成满足条件的数字数量
limitl,limith分别表示当前位是否受到start,finish的约束
不受约束则可以填入[0,limit]

def numberOfPowerfulInt(start, finish, limit, s):""":type start: int:type finish: int:type limit: int:type s: str:rtype: int"""l,h=str(start),str(finish)n=len(h)l=l.zfill(n)prelen=n-len(s)mem={}def dfs(i,limitl,limith):if (i,limitl,limith) in mem:return mem[(i,limitl,limith)]if i==n:return 1lo=int(l[i]) if limitl else 0hi=int(h[i]) if limith else 9ans = 0if i<prelen:for d in range(lo,min(hi,limit)+1):ans += dfs(i+1,limitl and d==lo,limith and d==hi)else:x=int(s[i-prelen])if lo<=x<=min(hi,limit):ans=dfs(i+1,limitl and x==lo,limith and x==hi)mem[(i,limitl,limith)]=ansreturn ansreturn dfs(0,True,True)

4/11 2843. 统计对称整数的数目

考虑两位数 11的倍数
四位数 前两位和等于后两位和

def countSymmetricIntegers(low, high):""":type low: int:type high: int:rtype: int"""ans=0for i in range(low,high+1):if i<100 and i%11==0:ans+=1if 1000<i<10000:if i//1000+i%1000//100==i%100//10+i%10:ans+=1return ans

4/12 3272. 统计好整数的数目

列举所有K回文数 对每个数计算排列组合

def countGoodIntegers(n, k):""":type n: int:type k: int:rtype: int"""nums=set()base=10**((n-1)//2)sk=n&1for i in range(base,base*10):s=str(i)s+=s[::-1][sk:]num=int(s)if num%k==0:nums.add(''.join(sorted(s)))def fac(num):n=1for i in range(1,num+1):n*=ireturn nf=[fac(i) for i in range(n+1)]ans=0for s in nums:cnt=[0]*10for c in s:cnt[int(c)]+=1t = (n-cnt[0])*f[n-1]for x in cnt:t//=f[x]ans+=treturn ans

4/13 1922. 统计好数字的数目

偶数位置有0,2,4,6,8 五种
奇数位置有2,3,5,7 四种

def countGoodNumbers(n):""":type n: int:rtype: int"""MOD=10**9+7def func(x,y):ans,mul=1,xwhile y>0:if y%2==1:ans= ans*mul%MODmul = (mul**2)%MODy=y//2return ansreturn func(5,(n+1)//2)*func(4,n//2)%MOD

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

相关文章:

  • 上海杨浦网站建设嘉兴网站建设方案优化
  • 看视频的软件哪个最好免费湛江百度seo公司
  • 招聘网站做竞品分析广州网络营销产品代理
  • 班级网站开发毕业论文参考文献厦门seo推广外包
  • 网站建设要咨询哪些上海的重大新闻
  • 铜陵app网站做营销招聘信息百度的排名规则详解
  • 如何自己建个人网站seo优化几个关键词
  • 创造你魔法官方网站起做欢的事淘宝运营培训机构
  • 商丘网站推广渠道奶盘seo伪原创工具
  • 北京网站托管公司百度问一问客服人工在线咨询
  • 南昌专业的企业网站建设公司网络广告投放渠道有哪些
  • 营销网站建设哪家好上海seo公司排名榜
  • 怎么快速做网站淘宝网店运营
  • 网站后台培训磁力天堂最佳搜索引擎入口
  • 南山做网站教程上海网站建设哪家好
  • 网站主机一般选哪种的seo职业
  • 重庆微信网站建设报价表批量查询指数
  • 东台做网站实体店营销方案
  • 学校网站模板 红色青岛seo招聘
  • 广州小型网站建设公司视频外链工具
  • 蚌埠网站建设中心口碑营销公司
  • 自适应wordpress美女图片整站中国软文网
  • 爱站网关键词挖掘工具站长工具友情链接联盟
  • 网站开发自学资料现在最好的免费的建站平台
  • 龙岗建站费用媒体软文发稿
  • 河南建设监理协会网站6宁波百度推广优化
  • 专业网站建设模块seo排名优化app
  • 网页与网站设计说明怎么做好网络销售
  • 网络营销的网站的分析学校网站建设
  • 建网站要几个域名免费推广引流平台推荐