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

网站建设公司落寞googleplay

网站建设公司落寞,googleplay,建筑公司网站背景图,产品网站建设公司2466. 统计构造好字符串的方案数 - 力扣(LeetCode) 这个问题可以用**动态规划(DP)**来解决,思路如下: 思路 1. 定义 DP 数组 设 dp[i] 表示长度为 i 的好字符串的个数。 2. 状态转移方程 我们可以在 dp…

2466. 统计构造好字符串的方案数 - 力扣(LeetCode)

这个问题可以用**动态规划(DP)**来解决,思路如下:


思路

1. 定义 DP 数组

dp[i] 表示长度为 i 的好字符串的个数

2. 状态转移方程
  • 我们可以在 dp[i] 的基础上添加 zero'0',得到 dp[i + zero]
  • 或者在 dp[i] 的基础上添加 one'1',得到 dp[i + one]

因此,状态转移方程为:dp[i]=dp[i−zero]+dp[i−one]

需要对 10^9 + 7 取模。

3. 初始化
  • dp[0] = 1,表示空字符串。
4. 目标
  • 我们要求 low ≤ i ≤ high 之间的所有 dp[i] 的总和。

代码实现

def countGoodStrings(low: int, high: int, zero: int, one: int) -> int:MOD = 10**9 + 7dp = [0] * (high + 1)dp[0] = 1  # 空字符串# 计算 dpfor i in range(1, high + 1):if i >= zero:dp[i] = (dp[i] + dp[i - zero]) % MODif i >= one:dp[i] = (dp[i] + dp[i - one]) % MOD# 计算 [low, high] 之间的总和return sum(dp[low: high + 1]) % MOD

复杂度分析

  • 时间复杂度:O(high)。
  • 空间复杂度:O(high)。

示例

输入
print(countGoodStrings(2, 3, 1, 2))
输出
5
解释

满足条件的字符串:

  • "00""11""01""10""001"

优化

由于 dp[i] 只依赖于前面的 dp[i-zero]dp[i-one],可以用一个变量存储 dp[low]dp[high] 之间的和,减少不必要的计算:

def countGoodStrings(low: int, high: int, zero: int, one: int) -> int:MOD = 10**9 + 7dp = [1] + [0] * highresult = 0for i in range(1, high + 1):if i >= zero:dp[i] = (dp[i] + dp[i - zero]) % MODif i >= one:dp[i] = (dp[i] + dp[i - one]) % MODif i >= low:result = (result + dp[i]) % MOD  # 直接求和return result

这样可以避免额外的 sum() 计算,使得代码更高效!🚀

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

相关文章:

  • 重庆南岸网站建设爱站工具网
  • wordpress通知评论者怎么做seo信息优化
  • 常见的网络营销方法及其效果企业seo优化
  • 网络营销效果评估的作用厦门百度seo排名
  • 网络推广和优化是什么意思seo网络推广培训班
  • 自己的网站怎么做网络营销的市场背景
  • 网站怎么做全屏滚动seo外贸推广
  • 盘石做的网站搜索关键词技巧
  • 搜启网站建设wordpress免费网站
  • 做网站图片素材中国互联网协会官网
  • 网站建设(信奈辉煌电商)刷粉网站推广快点
  • WordPress添加海报分享百度推广优化怎么做
  • 关于中国幼教网站开发的经验公司网站与推广
  • 怎样写网站设计意义百度快速查询
  • wordpress接入qq互联优化软件seo排名
  • 做网站汉中考研培训机构排名前十
  • 有哪些做问卷调查的网站好正规电商平台有哪些
  • 汕头网站设计开发专业经典软文案例
  • 哈尔滨中小企业网站制作搜索引擎的两个基本方法
  • 做网站联系电话武汉seo创造者
  • 赣州住房和建设局网站什么是网络营销与直播电商
  • java与php哪个做网站好深圳 网站制作
  • 福州销售网站设计企业网站网络推广公司
  • 做毕设最常去的几个网站网络软营销
  • 微信开发网站开发网站seo怎么操作
  • 如何用电脑主机做网站网络营销是做什么
  • 网站克隆镜像做关键字seoseo外包方案
  • 网站设计制作排名推广普通话手抄报文字内容
  • 免费在线做网站谷歌seo优化排名
  • 网站运营主要是做什么网上推广赚钱项目