Q~ 抛一枚硬币 n 次,每次可能是正面或者反面向上,求没有连续超过 k 次硬币向上的方案数

A :

  dp[ i ] 表示到 i 位置的方案数,

  1 . 当 i < k 时, dp[i] = dp[i-1]*2

  2 . 当 i = k 时, dp[i] = dp[i-1]*2 - 1

  3. 当 i > k 时, dp[i] = dp[i-1]*2 - dp[i-k-1]

 

ll n, k;
ll dp[maxn];void solve() {dp[0] = 1;ll res = 1;for(ll i = 1; i <= n; i++){if (i < k) dp[i] = dp[i-1]*2;else if (i == k) dp[i] = dp[i-1]*2-1;else dp[i] = dp[i-1]*2-dp[i-k-1];dp[i] %= mod;res *= 2; res %= mod;}ll ans = (res-dp[n]+mod)%mod;printf("%lld\n", ans);
}

Q~ 有三种字母, 一个长度为 n 的序列的每一个位置只可能是这三种字母,但要求连续的三个位置不能同时出现这三种,求方案数

A :

  dp[i][0] 表示 i 位置与 i-1 位置相同的方案数, dp[i][1] 表示 i 位置与 i-1 位置不同的方案数

  dp[i][0] = dp[i-1][0] + dp[i-1][1]
       dp[i][1] = 2*dp[i-1][0] + dp[i-1][1]

void solve() {dp[1][0]=3;dp[1][1]=0;for(int i=2;i <= n; i++){dp[i][0]=dp[i-1][0]+dp[i-1][1];dp[i][1]=2*dp[i-1][0]+dp[i-1][1];}
}

  

转载于:https://www.cnblogs.com/ccut-ry/p/10065941.html

各种小的 dp (精)相关推荐

  1. LOJ#6089 小 Y 的背包计数问题 - DP精题

    题面 题解 (本篇文章深度剖析,若想尽快做出题的看官可以参考知名博主某C202044zxy的这篇题解:https://blog.csdn.net/C202044zxy/article/details/ ...

  2. css补充(1):css实现小三角,精灵图,字体图标

    文章目录 一.css实现小三角 1.1 三角形实现 二.精灵图的使用 三.字体图标 一.css实现小三角 1.1 三角形实现 html: <div class="sanjiao&quo ...

  3. leetcode 440. 字典序的第K小数字(精)

    题目: 给定整数 n 和 k,找到 1 到 n 中字典序第 k 小的数字. 注意:1 ≤ k ≤ n ≤ 109. 示例 : 输入: n: 13 k: 2 输出: 10 解释: 字典序的排列是 [1, ...

  4. 如何二值图转化为灰度图_木工真空吸附雕刻机如何用精雕5.21把精雕图模型转为灰度图...

    随着数控雕刻机的普及,用户们对雕刻图纸的需求量越来越大.目前中国主流的雕刻图纸制作软件是北京精雕,也就是常说的精雕图.因不同的需要,很多人习惯使用灰度图来进行雕刻.本文无锡酬信雕刻机厂家小编以精雕5. ...

  5. 比赛:小奔与不等四边形solution

    题目: 题目背景 有这样一道经典的数学题:已知一个四边形的边长是四个连续的正整数,求证这个四边形的面积的最大值不为整数.小奔轻松地证明了这个问题,现在问题来了,大奔要求小奔以最快的速度算出给定边长的四 ...

  6. 策小编脑中的“私有化部署”

    大家好,上个策小编被开除了, 换王富贵儿来给大家讲故事, 哈哈逗你们的-- 王小明辛苦搬砖在五环, 后厂村路互联网做运营, 老板引进数据驱动理念, 不懂技术咋分析求产品. 二表哥根正苗红在北京, 通州 ...

  7. 2020ICPC(小米邀请赛2) - Knapsack(贪心+dp)

    题目链接:点击查看 题目大意:给出 n 个物品,每个物品都有体积和价值,现在问容量为 m 的背包最多可以装下多少价值的物品 题目分析:本题正解应该是斜率优化dp,然鹅看了大佬们的博客讲解后,感觉不是自 ...

  8. CF1540B Tree Array(期望,dp)

    解析 关于合理的实现 这题卡在最后的小破dp是我没想到的 一开始看到200的数据范围就不禁笑出了声 lca直接On求! 然后就开始大力分类讨论 然后就卡在了一个问题上 两个栈AB,分别有a和b个元素, ...

  9. dp笔记:关于DP算法和滚动数组优化的思考

    从网上总结了一些dp的套路以及对滚动数组的一些思考,现记录如下,希望以后回顾此类算法时会有所帮助. 目录 1.DP算法经验 1.DP算法核心: 2.DP算法类别以及例题 例1:三步问题 例2:最小路径 ...

最新文章

  1. 课程第五天内容《基础交换 五》
  2. 人月神话第一篇阅读笔记
  3. SAP CRM Division下载调试
  4. wps多人协作后怎么保存_蜂蜜开封后能放多久?蜂蜜开封后怎么保存?蜂蜜存放要注意事项...
  5. python对平面设计帮助_平面设计工作心得
  6. UESTC 1706 Orbital
  7. 方法同时使用微服务调用文件上传方法以及调用另一微服务的方法时报错failed to parse multipart servlet Request
  8. 用1000W破解字典破解pdf文档(提供1000W破解字典)
  9. matlab计算海洋浮力频率_海洋要素计算:潮汐调和分析
  10. 如何从用户旅程图中挖掘差异化需求?
  11. BurpSuite 安装配置(License Key)
  12. 有道云生成html,从有道云笔记迁移到为知笔记
  13. 【帮推】欢迎搭乘KAB号时光飞船~
  14. JAVA公益捐赠管理系统_公益组织捐赠系统的设计与实现
  15. 小猿圈Java讲师分享开发9年Java进阶大全
  16. 利用cesium模拟台风移动路径——以利奇马台风为例
  17. 数组——洛谷#P1567 统计天数(Python实现)
  18. 电力电子与电力传动类毕业论文文献包含哪些?
  19. css清除浮动的几种方式
  20. php隐藏后门,php后门隐藏技巧

热门文章

  1. 【BZOJ-3456】城市规划 CDQ分治 + NTT
  2. cf 414B Mashmokh and ACM 动态规划
  3. 黑帽大会2014:10个酷炫的黑客工具
  4. 20140725 快速排序时间复杂度 sTL入门
  5. sdut 2401 最大矩形面积
  6. Oracle round函数是什么意思?怎么运用?
  7. Apache反向代理设置【转载】
  8. php-fpm – 配置详解
  9. C# 2.0 的partial
  10. ASP.NET 打开新窗口几种方法