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

leetcode2466,爬楼梯变体,取模注意

思路:

遍历low到high的长度,考虑最后的字符的情况,有两种情况嘛,如果长度允许,就继续减?

class Solution {static constexpr int MOD = 1e9 + 7;vector<int> memo;int dfs(int len, int zero, int one) {if(len < 0) {return 0;}if(len == 0) {return 1;}if(memo[len] != -1) {return memo[len];}memo[len] = 0;if (len >= zero) {memo[len] = (memo[len] + dfs(len - zero, zero, one)) % MOD;}if (len >= one) {memo[len] = (memo[len] + dfs(len - one, zero, one)) % MOD;}return memo[len];}public:int countGoodStrings(int low, int high, int zero, int one) {memo.resize(high + 1, -1);int res = 0;for(int i = low; i <= high; i++) {res = (res + dfs(i, zero, one)) % MOD;}return res;}
};// 遍历low到high的长度,考虑最后的字符的情况,有两种情况嘛,如果长度允许,就继续减?

就是爬楼梯那感觉!

然后取模要注意,

res += (dfs(i, zero, one)) % MOD;

正确!res = (res + dfs(i, zero, one)) % MOD;

http://www.dtcms.com/a/210806.html

相关文章:

  • 国际前沿知识系列三:解决泛化能力不足问题
  • 29-FreeRTOS事件标志组
  • 开发者工具箱-鸿蒙AES加密解密开发笔记
  • HTTP基本概述
  • 机器学习开发全流程
  • 嵌入式培训之系统编程(四)进程
  • C++ 正则表达式简介
  • untiy实现汽车漫游
  • World of Warcraft [CLASSIC] 80 Hunter [Grandel] VS Onyxia
  • 超声波测厚仪在复杂工况下的测量精度保障方法
  • 精益数据分析(83/126):从病毒性到营收——创业阶段的关键跨越与商业化策略
  • TypeScript 和 JavaScript核心关系及区别
  • iOS 直播特殊礼物特效实现方案(Swift实现,超详细!)
  • Trae(The Real Al Engineer)
  • [Java] 封装
  • Java编程基础:从零开始掌握核心语法
  • 您的浏览器不支持摄像头API—仙盟创梦IDE
  • CAN通信收发测试(USB2CAN模块测试实验)
  • 浏览器强缓存还未过期,但服务器资源已经变了怎么办?
  • WebAssembly:开启跨平台高性能编程的新时代
  • 部署Gitlab-CE with Docker私有云环境
  • 清除 Ubuntu 磁盘空间
  • 电脑网络如何改ip地址?ip地址改不了怎么回事
  • 安全基础与协议分析
  • MybatisPlus入门
  • 行列式中某一行的元素与另一行对应元素的代数余子式乘积之和等于零
  • 一周学会Pandas2 Python数据处理与分析-Pandas2数据合并与对比-pd.merge():数据库风格合并
  • C++编译/链接模型
  • 老牌协议再升级,Ethernet IP转Modbus TCP网关桥接精准灌装系统
  • DELL EMC PowerStore BBU更换手册