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

企业管理网站的来历wordpress歌词插件

企业管理网站的来历,wordpress歌词插件,品牌营销增长公司哪家好,新网域名备案数位动态规划 数位动态规划是求解一个大区间[L, R]中间满足条件Q的所有数字的个数#xff08;或者和#xff0c;或其他#xff09;的一种方法。它通过分析每一位上的数字#xff0c;一般用 dp[len][digit][...] 来表示状态“len位长的数字#xff0c;最高位数字为digi… 数位动态规划     数位动态规划是求解一个大区间[L, R]中间满足条件Q的所有数字的个数或者和或其他的一种方法。它通过分析每一位上的数字一般用 dp[len][digit][...] 来表示状态“len位长的数字最高位数字为digit所具有的xx特性”利用记忆化搜索保存中间结果从而加快求解速度。     通过求 f(n) 从0到n中满足条件Q的数字的个数则所求的结果为 f(R) - f(L-1).     大多数数位dp都可以用一个DFS函数来进行记忆化搜索 //len数字的位数digit最高位的值end_flag 表示digit是否是第len位从低位向高位数个位为第1位 的范围边界 int Dfs(int len, int digit, bool end_flag){//超出边界if (len 0 || digit 9 || digit 0)return 0;//记忆化搜索如果之前已经求出来了则返回。注意这里要求 end_flag为falseif (!end_flag dp[len][digit] ! -1)return dp[len][digit];// 最简单情况看数字是否满足要求if (len 1)return dp[len][digit] xxx;//如果当前位是边界数字N对应位的最大值则下一位的范围只能从0到边界数字N的下一位的最大值。否则为0 到 9int end end_flag ? bits[len - 2] : 9; int ans 0;for (int i 0; i end; i){ans Dfs(len - 1, i, end_flag (iend));}if (!end_flag) //digit不是第len位的最高范围则可以将结果缓存dp[len][digit] ans;return ans; }题目大意     给定一个区间[L, R]求区间内满足条件“数位上不含有4且不含有6262必须连续”的数字的个数。 分析     直接套用模板 实现 #includeiostream #includestdio.h using namespace std; int dp[9][10]; int bits[8];//用dfs进行记忆化搜索 dp[len][digit] 表示 len位数字最高位为digit满足条件的个数. 这里对数字范围没有限制 //搜索的时候若要进行记忆化需要 dp[len][digit]的结果对数字范围没有限制因此需要判断 end_flag来决定是否进行记忆。//len数字的位数digit最高位的值end_flag 表示digit是否是第len位从低位向高位数个位为第1位 的范围边界 int Dfs(int len, int digit, bool end_flag){//超出边界if (len 0 || digit 9 || digit 0)return 0;//记忆化搜索如果之前已经求出来了则返回。注意这里要求 end_flag为falseif (!end_flag dp[len][digit] ! -1)return dp[len][digit];// 最简单情况看数字是否满足要求if (len 1)return dp[len][digit] (digit ! 4);if (digit 4)return dp[len][digit] 0;//如果当前位是边界数字N对应位的最大值则下一位的范围只能从0到边界数字N的下一位的最大值。否则为0 到 9int end end_flag ? bits[len - 2] : 9; int ans 0;for (int i 0; i end; i){if (!(digit 6 i 2)) //除去 62连续的情况ans Dfs(len - 1, i, end_flag (iend));}if (!end_flag) //digit不是第len位的最高范围则可以将结果缓存dp[len][digit] ans;return ans; }//将数字n的各个位上的范围求出来保存到bits数组中返回数字n的长度 int Init(int n){ memset(bits, 0, sizeof(bits));int k 0;while (n){bits[k] n % 10;n / 10;}return k; }int Solve(int n){ int len Init(n); //数字长度为len则为了避免首位遍历从0到bits[len-1]给数字增加一个前导0。//len 1位首位为0且0是最高位的边界int ans Dfs(len 1, 0, true);return ans; } int main(){int m, n;memset(dp, -1, sizeof(dp));while (scanf(%d %d, m, n)){if (m 0 n 0)break; int ret1 Solve(m-1);int ret2 Solve(n);int ret ret2 - ret1;printf(%d\n, ret);}return 0; }转载于:https://www.cnblogs.com/gtarcoder/p/5463451.html
http://www.yutouwan.com/news/100681/

相关文章:

  • 4399网站开发人员 被挖走给有后台的网站做网页
  • 企业网站建设个人博客做试卷挣钱的网站
  • 做调查的网站‘给客户做网站建设方案
  • 火车票网站开发长沙制作网页网站
  • 艺术类网站模板免费企业网站系统源码下载
  • 怎么制作网站登录上海百度关键词搜索推广服务
  • wordpress伪静态地址沧州网站建设优化公司
  • 网站传送门怎么做亚马逊官网首页中国
  • 网站如何做背景音乐黄江东莞网站建设
  • 网站域名如何注册网页制作和网页制作技术
  • 四川建设工程网上合同备案网站网络营销的企业有哪些
  • 济南市建设招标中心网站服务器搭建网站跑不满宽带
  • 东莞网站seo技术wordpress 主题右边栏
  • 沈阳网站开发技术公司免费logo制作
  • 网站内容管理系统怎么用一流的成都 网站建设
  • 最专业的网站建设推广平面设计创意构图
  • 用html5做网站的优点长沙网络推广只选智投未来
  • 网站制作软件安卓版长沙网站建设长沙
  • 易语言建设网站做电商
  • 贵阳h5网站建设简单网站建设官网
  • 广东网站建设案例沧州软件开发公司
  • 广告网站设计公司好吗宁波网站免费建设服务平台
  • 北京网站建设浩森宇特哪项属于网页制作工具
  • 怎样创建微网站微信网站搭建教程
  • 主题公园网站建设方案定制号码需要多少钱
  • 临沂在线上网站建设wordpress能做交互类网站
  • 抚州市建设局网站查询上海计算机培训机构
  • 锦州网站建设品牌住房和城乡建设部官网查询平台
  • 武威做网站的门户网站建设 交流发言
  • 做网站推广的技巧生产企业网站建设