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

网站收录系统网络营销课程个人总结3000字

网站收录系统,网络营销课程个人总结3000字,阿里巴巴电脑版登录入口,直播软件开发公司骰子模拟器:基于动态规划的点数序列计数问题解析 一、题目背景 在骰子模拟的世界中,有一个特殊的骰子模拟器。它每次投掷时会生成一个 1 到 6 的随机数,但存在一个约束条件:连续掷出数字 i 的次数不能超过 rollMax[i]&#xff0…

骰子模拟器:基于动态规划的点数序列计数问题解析

一、题目背景

在骰子模拟的世界中,有一个特殊的骰子模拟器。它每次投掷时会生成一个 1 到 6 的随机数,但存在一个约束条件:连续掷出数字 i 的次数不能超过 rollMax[i]i 从 1 开始编号)。现在给定一个整数数组 rollMax 和整数 n,要求计算掷 n 次骰子可得到的不同点数序列的数量(答案需对 10^9 + 7 取模)。

二、解题思路分析

动态规划(DP)核心逻辑:将复杂问题拆解为子问题,通过记录子问题的解避免重复计算。

  1. 状态定义: 用三维数组 dp[i][j][k] 表示掷 i 次骰子,最后一次点数为 jj∈[0,5],对应 1-6 点),且 j 连续出现 k 次的序列数量。
  2. 初始化: 当 i = 1 时,每个点数首次出现的情况各 1 种,即 dp[1][j][1] = 1
  3. 状态转移
    • 情形一:当前点数首次连续出现(k = 1 dp[i][j][1] 可从前面任意非 j 的点数转移,即 dp[i][j][1] = Σ dp[i - 1][p][q]p≠j1≤q≤rollMax[p])。
    • 情形二:当前点数连续出现多次(k > 1 仅能从 dp[i - 1][j][k - 1] 转移,需满足 k ≤ rollMax[j]
  4. 结果计算: 遍历所有 dp[n][j][k]1≤k≤rollMax[j])求和并取模。
三、代码实现与详解
class Solution {private static final int MOD = (int) (1e9 + 7);public int dieSimulator(int n, int[] rollMax) {int[][][] dp = new int[n + 1][6][16];// 初始化:第一次投掷,每个点数出现1次的情况for (int j = 0; j < 6; j++) {dp[1][j][1] = 1;}// 动态规划:从第2次投掷开始计算for (int i = 2; i <= n; i++) {for (int j = 0; j < 6; j++) {// 情形一:当前点数首次连续出现for (int p = 0; p < 6; p++) {if (p != j) {for (int q = 1; q <= rollMax[p]; q++) {dp[i][j][1] = (dp[i][j][1] + dp[i - 1][p][q]) % MOD;}}}// 情形二:当前点数连续出现多次for (int k = 2; k <= rollMax[j]; k++) {dp[i][j][k] = dp[i - 1][j][k - 1];}}}// 计算最终结果:汇总所有有效状态int result = 0;for (int j = 0; j < 6; j++) {for (int k = 1; k <= rollMax[j]; k++) {result = (result + dp[n][j][k]) % MOD;}}return result;}
}

代码说明

  • 用 MOD 常量处理取模,dp 数组存储状态;
  • 三层循环实现状态转移,内层分别处理两种情形;
  • 最后两层循环累加 n 次投掷后的有效状态。
四、复杂度分析
  • 时间复杂度O(n\times 6^{2}\times 15)(假设 rollMax 最大值为 15);
  • 空间复杂度O(n\times 6\times 15),取决于 dp 数组大小。
五、总结

通过动态规划,我们以状态转移精准解决了骰子序列计数问题。关键在于定义状态、拆解情形并严格取模。若对细节有疑问,欢迎随时交流!


文章转载自:

http://znNB9aZa.wjhpg.cn
http://3amVQ7yA.wjhpg.cn
http://QrFNEQal.wjhpg.cn
http://24HqeHJ2.wjhpg.cn
http://kw80nign.wjhpg.cn
http://2aNWRG3J.wjhpg.cn
http://hKwrE4QT.wjhpg.cn
http://qxdpHwBe.wjhpg.cn
http://elBToyg8.wjhpg.cn
http://y9KEk0kv.wjhpg.cn
http://su9MhFu2.wjhpg.cn
http://cUmLeqUo.wjhpg.cn
http://uQEpZJat.wjhpg.cn
http://NVwQN7NC.wjhpg.cn
http://ILdhJYDT.wjhpg.cn
http://TQIndGFx.wjhpg.cn
http://Zv7J2auz.wjhpg.cn
http://Cf7nPPgB.wjhpg.cn
http://EGxISJw2.wjhpg.cn
http://4FCcLKkK.wjhpg.cn
http://ImQ3N912.wjhpg.cn
http://3cMD62i3.wjhpg.cn
http://mD1Gf3y4.wjhpg.cn
http://mtTdbmWQ.wjhpg.cn
http://IPTyoMzA.wjhpg.cn
http://WKuVPdb9.wjhpg.cn
http://Wk7yUcDa.wjhpg.cn
http://ffO5tb3p.wjhpg.cn
http://dFZieCh3.wjhpg.cn
http://dZn992A5.wjhpg.cn
http://www.dtcms.com/wzjs/757488.html

相关文章:

  • 免费网站seo四川瑞通工程建设有限公司网站
  • 东莞网站建设公司辉煌大厦模仿网站制作
  • 长沙民政计算机网站建设聊城网站策划
  • 成都最新的防疫通告今天北京seo案例
  • 面签拍照 网站备案建筑人才网官方网站评职称
  • 爱站关键词挖掘查询工具太原网站建设口碑推荐
  • 自助建站加盟羽毛球赛事2022赛程
  • 河南专业网站建设公司哪家好如何部署thinkphp网站
  • 观澜专业做网站公司海外网络连接器
  • 网站建设有啥费用搜索引擎营销名词解释
  • vs2015 网站开发教程如何批量入侵WordPress站
  • 现在做网站用什么wordpress sql优化
  • 一学一做专题网站闵行工程建设网站
  • 网站的布局方式有哪些电商网站开发方案
  • 网站快速收录平台网站建设期间工作
  • 佛山网站建设专业现状seo优化推广工程师招聘
  • 一个主机放几个网站设计的种类
  • 网站开发专业有哪些温州大凯工艺品有限公司英文网站
  • 用自己的电脑做视频网站吗推广措施
  • 有优惠券网站 怎么做代理网站的建设模式是指什么
  • 外贸建设网站网站结构怎么分析
  • 什么叫网站规划网络app推广是什么工作
  • 温州哪里有做网站凡科建站网址
  • 巴彦淖尔专业做网站的福州市建设工程造价管理网站
  • 建设商务网站公司大气聚财的名字
  • 做礼品的网站实时热点新闻及评论
  • 网站备案需要多长时间做网站 搞流量 赚广告费
  • 北京市网站建设 维护推荐石家庄搭建网站
  • 做网站的公司叫什么名字好手机视频制作软件排名
  • 一般做外贸上什么网站刷单做任务的网站