邱老师选妹子

Time Limit: 20 Sec  Memory Limit: 256 MB

题目连接

http://acm.uestc.edu.cn/#/contest/show/65

Description

邱老师长得帅这是人尽皆知,于是追他的妹子就会很多。

但是你知道,邱老师是一个很专一的人,所以他心里面只能有一个人。

于是他决定从追他的众多妹子里挑选一个出来。于是酱神给邱老师出来一个主意,已知有一些妹子,恰好可以给她们从l到r排号,使得每一个妹子有单独的数字,而正好有r-l+1个妹子。

酱神说,我们不能要运气不好的女孩,而酱神又给了两个数字62和4,如果妹子的排号里面有62(必须是连续的)或4,那么就排除他现在给你l和r,问有多少妹子可以有幸在第一轮留下。

wij 千 克的蛋糕,Gorwin从左上角(1,1)的格子开始走,走到右下角(n,m)的格子。在每一步中,Gorwin可以向右或者向下走,即是:Gorwin 站在(i,j)的时候,她可以走向(i+1,j)或者(i,j+1) (然而她不能走出这个花园)。 当Gorwin到达一个格子的时候,她可以把那个格子里面的蛋糕吃完或者不吃。但是,她不能只吃一部分。她的胃不是那么大,所以她最多只能吃K千克的蛋 糕。现在,Gorwin站在左上角,她在看蛋糕园的地图,想要找出一条路,能够使得她吃到的蛋糕最多的一条路。请你来帮帮忙。

Input

输入的都是整数对l、r(0<l≤r<1000000),如果遇到都是0的整数对,则输入结束。

Output

每组数据输出占一行,对于每个l和r 输出有多少个妹子可以在第一轮不被排除

Sample Input

  1. 1 100
  2. 0 0

Sample Output

  1. 80

HINT

题意

题解:

其实这道题就是数位dp,不要62

代码:

  1. //qscqesze
  2. #include <cstdio>
  3. #include <cmath>
  4. #include <cstring>
  5. #include <ctime>
  6. #include <iostream>
  7. #include <algorithm>
  8. #include <set>
  9. #include <vector>
  10. #include <sstream>
  11. #include <queue>
  12. #include <typeinfo>
  13. #include <fstream>
  14. #include <map>
  15. #include <ctime>
  16. #include <stack>
  17. typedef long long ll;
  18. using namespace std;
  19. //freopen("D.in","r",stdin);
  20. //freopen("D.out","w",stdout);
  21. #define sspeed ios_base::sync_with_stdio(0);cin.tie(0)
  22. #define maxn 200001
  23. #define mod 10007
  24. #define eps 1e-9
  25. int Num;
  26. char CH[];
  27. //const int inf=0x7fffffff; //нчоч╢С
  28. const int inf=0x3f3f3f3f;
  29. /*
  30.  
  31. inline void P(int x)
  32. {
  33. Num=0;if(!x){putchar('0');puts("");return;}
  34. while(x>0)CH[++Num]=x%10,x/=10;
  35. while(Num)putchar(CH[Num--]+48);
  36. puts("");
  37. }
  38. */
  39. inline ll read()
  40. {
  41. int x=,f=;char ch=getchar();
  42. while(ch<''||ch>''){if(ch=='-')f=-;ch=getchar();}
  43. while(ch>=''&&ch<=''){x=x*+ch-'';ch=getchar();}
  44. return x*f;
  45. }
  46. inline void P(int x)
  47. {
  48. Num=;if(!x){putchar('');puts("");return;}
  49. while(x>)CH[++Num]=x%,x/=;
  50. while(Num)putchar(CH[Num--]+);
  51. puts("");
  52. }
  53. //**************************************************************************************
  54. int dp[][];
  55. int bit[];
  56. int n,m;
  57.  
  58. void init()
  59. {
  60. dp[][]=,dp[][]=,dp[][]=;
  61. for(int i=;i<=;i++)
  62. {
  63. dp[i][]=dp[i-][]*-dp[i-][];
  64. dp[i][]=dp[i-][];
  65. dp[i][]=dp[i-][]*+dp[i-][]+dp[i-][];
  66. }
  67. }
  68.  
  69. int cal(int n)
  70. {
  71. int temp=n;
  72. memset(bit,,sizeof(bit));
  73. int len=;
  74. while(n)
  75. {
  76. bit[++len]=n%;
  77. n/=;
  78. }
  79. bit[len+]=;
  80. int ans=;
  81. bool flag=;
  82. for(int i=len;i>=;i--)
  83. {
  84. ans+=bit[i]*dp[i-][];
  85. if(flag)
  86. ans+=bit[i]*dp[i-][];
  87. else
  88. {
  89. if(bit[i]>)
  90. ans+=dp[i-][];
  91. if(bit[i]>)
  92. ans+=dp[i-][];
  93. if(bit[i+]==&&bit[i]>)
  94. ans+=dp[i][];
  95. }
  96. if(bit[i]==||(bit[i+]==&&bit[i]==))
  97. flag=;
  98. }
  99. if(flag)
  100. ans++;
  101. return temp-ans;
  102. }
  103.  
  104. int main()
  105. {
  106. init();
  107. while(cin>>n>>m&&(n||m))
  108. {
  109. cout<<(cal(m)-cal(n-))<<endl;
  110. }
  111. return ;
  112. }

UESTC 2015dp专题 H 邱老师选妹子 数位dp的更多相关文章

  1. UESTC 2015dp专题 F 邱老师看电影 概率dp

    邱老师看电影 Time Limit: 20 Sec  Memory Limit: 256 MB 题目连接 http://acm.uestc.edu.cn/#/contest/show/65 Descr ...

  2. UESTC 2015dp专题 G 邱老师玩游戏 背包dp

    邱老师玩游戏 Time Limit: 20 Sec  Memory Limit: 256 MB 题目连接 http://acm.uestc.edu.cn/#/contest/show/65 Descr ...

  3. [uestc oj]H - 邱老师选妹子

    H - 邱老师选妹子 Time Limit: 3000/1000MS (Java/Others)     Memory Limit: 65535/65535KB (Java/Others) Submi ...

  4. UESTC_邱老师选妹子 2015 UESTC Training for Dynamic Programming<Problem H>

    H - 邱老师选妹子 Time Limit: 3000/1000MS (Java/Others)     Memory Limit: 65535/65535KB (Java/Others) Submi ...

  5. UESTC_邱老师选妹子(二) 2015 UESTC Training for Dynamic Programming<Problem I>

    I - 邱老师选妹子(二) Time Limit: 3000/1000MS (Java/Others)     Memory Limit: 65535/65535KB (Java/Others) Su ...

  6. UESTC 2015dp专题 E 菲波拉契数制 dp

    菲波拉契数制 Time Limit: 20 Sec  Memory Limit: 256 MB 题目连接 http://acm.uestc.edu.cn/#/contest/show/65 Descr ...

  7. UESTC 2015dp专题 A 男神的礼物 区间dp

    男神的礼物 Time Limit: 20 Sec  Memory Limit: 256 MB 题目连接 http://acm.uestc.edu.cn/#/contest/show/65 Descri ...

  8. CDOJ 1135 邱老师看电影 概率dp

    邱老师看电影 Time Limit: 3000/1000MS (Java/Others)     Memory Limit: 65535/65535KB (Java/Others) Submit St ...

  9. 邱老师玩游戏(树形DP) UESTC - 1136

    邱老师最近在玩一种战略游戏,在一个地图上,有N座城堡,每座城堡都有一定的宝物,在每次游戏中邱老师允许攻克M个城堡并获得里面的宝物. 但由于地理位置原因,有些城堡不能直接攻克,要攻克这些城堡必须先攻克其 ...

随机推荐

  1. stegsolve使用探究

    应该也不是工具的问题吧,更多的是图片.但是不知道咋取就写工具了. 比如:http://ctf5.shiyanbar.com/stega/chromatophoria/steg.png 我在想为毛要选择 ...

  2. python基础之常用的高阶函数

    前言 高阶函数指的是能接收函数作为参数的函数或类:python中有一些内置的高阶函数,在某些场合使用可以提高代码的效率. map() map函数可以把一个迭代对象转换成另一个可迭代对象,不过在pyth ...

  3. [转载]Firefox插件(plugins)开发实用指南

    转自: http://huandu.me/2010/02/11/595/ Firefox插件可实现强大功能,但其中麻烦事情不少.写这个实用指南首先是为了方便自己记忆,免得以后再次栽倒一些坑里面,如果能 ...

  4. Java开发必用的工具包

    Java是最流行的开源语言之一. 有赖于Java的开源,涌现出一大批优秀的开源框架,基本涵盖了开发中的方方面面,让程序员可以专注于自己的业务逻辑. ​ 今天,我们就来聊聊在开发中,经常被我们所忽略的[ ...

  5. 51Nod 1352 集合计数(扩展欧几里德)

    题目链接:https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1352 题目大意: 给出N个固定集合{1,N},{2,N-1} ...

  6. LightOJ 1369 Answering Queries(找规律)

    题目链接:https://vjudge.net/contest/28079#problem/P 题目大意:给你数组A[]以及如下所示的函数f: long long f( int A[], int n  ...

  7. ORA-12537: TNS:connection closed错误处理过程

    https://blog.csdn.net/mchdba/article/details/50018571

  8. Django Suit v2-dev 使用

    转:链接:https://www.jianshu.com/p/84fa8219fb48 官方文档: 链接 Git: 链接 install Django Suit 为了适配 Django 有许多不同的版 ...

  9. 《java虚拟机》----java内存区域与内存溢出异常

    No1: java虚拟机所管理的内存将会包括以下几个运行时数据区域 1.方法区 2.虚拟机栈 3.本地方法栈 4.堆 5.程序计数器 No2: 程序计数器: 程序计数器(Program Counter ...

  10. linux网络管理----网络基础

    1.1 ISO/OSI 七层模型 笔记: 打入ipconfig: mac地址:Media Access Control 也是物理地址,这是由网卡决定的.负责的是内网,也就是局域网通信. IPv4地址: ...