数位 dp 总结
用途:统计
(当然,如果题目要求统计
数据范围:
状态:现在是第几位(
模板:
int dp(int x,bool zer,bool lim,...){ if(x==0)return ...; if(!~f[x][zer][lim][...])return f[x][zer][lim][...]; // 记忆化 int res=0; for(int i=0;i<=(lim?num[x]:9);i++){ if(zer&&i==0)res+=dp(x-1,1,lim&&i==num[x],...); // 是前导零 else res+=dp(x-1,0,lim&&i==num[x],...); // 不是前导零 } // 有时我们不关心是不是前导零,此时这两种情况可以合并 return f[x][zer][lim][...]=res; }
本文来自博客园,作者:registerGen,转载请注明原文链接:https://www.cnblogs.com/registergen/p/digit_dp.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】