#2044. 「CQOI2016」手机号码

内存限制:256 MiB时间限制:1000 ms标准输入输出
题目类型:传统评测方式:文本比较
上传者: 匿名

题目描述

人们选择手机号码时都希望号码好记、吉利。比如号码中含有几位相邻的相同数字、不含谐音不吉利的数字等。手机运营商在发行新号码时也会考虑这些因素,从号段中选取含有某些特征的号码单独出售。为了便于前期规划,运营商希望开发一个工具来自动统计号段中满足特征的号码数量。

工具需要检测的号码特征有两个:号码中要出现至少 333 个相邻的相同数字;号码中不能同时出现 888 和 444。号码必须同时包含两个特征才满足条件。满足条件的号码例如:13000988721、23333333333、14444101000。而不满足条件的号码例如:1015400080、10010012022。

手机号码一定是 111111 位数,前不含前导的 000。工具接收两个数 LLL 和 RRR,自动统计出 [L,R][L, R][L,R] 区间内所有满足条件的号码数量。LLL 和 RRR 也是 111111 位的手机号码。

输入格式

输入文件内容只有一行,为空格分隔的两个正整数 L,RL, RL,R。

输出格式

输出文件内容只有一行,为一个整数,表示满足条件的手机号数量。

样例

样例输入

12121284000 12121285550

样例输出

5

样例解释

满足条件的号码有:12121285000、 12121285111、 12121285222、 12121285333、 12121285550。

数据范围与提示

对于 30%30\%30% 的数据,R−L≤107R - L \leq 10^7R−L≤10​7​​;
对于 100%100\%100% 的数据,1010≤L≤R<101110^{10} \leq L \leq R < 10^{11}10​10​​≤L≤R<10​11​​。

#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
int a[];
long long l,r,f[][][][][][];
long long dfs(int pos,int p1,int p2,bool p3,bool p4,bool p8,bool limit) {
if(p4&&p8) return ;
if(pos==) {return p3;}
if(!limit && f[pos][p1][p2][p3][p4][p8]!=-)return f[pos][p1][p2][p3][p4][p8];
int End=;
if(limit)End=a[pos];
long long ans=;
for(int i=;i<=End;i++)
ans+=dfs(pos-,p2,i,(p1==p2&&p2==i)||p3,(i==)||p4,(i==)||p8,limit&&(i==a[pos]));
if(!limit)f[pos][p1][p2][p3][p4][p8]=ans;
return ans;
}
long long solve(long long x) {
int len=;
while(x){
len++;
a[len]=x%;
x/=10LL;
}
long long res=;
for(int i=;i<=a[len];i++)
res+=dfs(len-,,i,,i==,i==,i==a[len]);
return res;
}
int main() {
memset(f,-,sizeof(f));
cin>>l>>r;
if(l==) cout<<solve(r);
else cout<<solve(r)-solve(l-);
return ;
}

loj #2044. 「CQOI2016」手机号码的更多相关文章

  1. LibreOJ2044 - 「CQOI2016」手机号码

    Portal Description 给出两个十一位数\(L,R\),求\([L,R]\)内所有满足以下两个条件的数的个数. 出现至少\(3\)个相邻的相同数字: 不能同时出现\(4\)和\(8\). ...

  2. loj2044 「CQOI2016」手机号码

    ref #include <iostream> #include <cstring> #include <cstdio> using namespace std; ...

  3. LoibreOJ 2042. 「CQOI2016」不同的最小割 最小割树 Gomory-Hu tree

    2042. 「CQOI2016」不同的最小割 内存限制:256 MiB时间限制:1000 ms标准输入输出 题目类型:传统评测方式:文本比较 上传者: 匿名 提交提交记录统计讨论测试数据   题目描述 ...

  4. Loj #2192. 「SHOI2014」概率充电器

    Loj #2192. 「SHOI2014」概率充电器 题目描述 著名的电子产品品牌 SHOI 刚刚发布了引领世界潮流的下一代电子产品--概率充电器: 「采用全新纳米级加工技术,实现元件与导线能否通电完 ...

  5. Loj #3096. 「SNOI2019」数论

    Loj #3096. 「SNOI2019」数论 题目描述 给出正整数 \(P, Q, T\),大小为 \(n\) 的整数集 \(A\) 和大小为 \(m\) 的整数集 \(B\),请你求出: \[ \ ...

  6. Loj #3093. 「BJOI2019」光线

    Loj #3093. 「BJOI2019」光线 题目描述 当一束光打到一层玻璃上时,有一定比例的光会穿过这层玻璃,一定比例的光会被反射回去,剩下的光被玻璃吸收. 设对于任意 \(x\),有 \(x\t ...

  7. Loj #3089. 「BJOI2019」奥术神杖

    Loj #3089. 「BJOI2019」奥术神杖 题目描述 Bezorath 大陆抵抗地灾军团入侵的战争进入了僵持的阶段,世世代代生活在 Bezorath 这片大陆的精灵们开始寻找远古时代诸神遗留的 ...

  8. Loj #2542. 「PKUWC2018」随机游走

    Loj #2542. 「PKUWC2018」随机游走 题目描述 给定一棵 \(n\) 个结点的树,你从点 \(x\) 出发,每次等概率随机选择一条与所在点相邻的边走过去. 有 \(Q\) 次询问,每次 ...

  9. Loj #3059. 「HNOI2019」序列

    Loj #3059. 「HNOI2019」序列 给定一个长度为 \(n\) 的序列 \(A_1, \ldots , A_n\),以及 \(m\) 个操作,每个操作将一个 \(A_i\) 修改为 \(k ...

随机推荐

  1. 引用 WCF 服务后,没有生成任何 .datasource?

    如题WCF服务生成成功,在添加服务引用的时候也不报错,但是添加完成之后不能正常调用服务借口. 在重新引用服务的时候,或者是是更新引用服务的时候,点“高级”按钮,在服务引用设置对话框中,将“重新使用引用 ...

  2. phyton方面相关书籍

    0基础:<简明PYTHON教程>http://linux.chinaitlab.com/manual/Python_chinese/<与孩子一起学编程>http://book. ...

  3. Python:包、模块、类、函数的调用

    一.关系 包一般指文件夹或者安装包(安装包一般也是压缩后的文件夹),里面包含多个.py文件(必须有一个__init__.py文件),一般也含有多个子包(或子文件夹): 一般一个.py文件就是一个模块, ...

  4. Spring学习九 Servlet相关

    servlet作用: 它驻留在 Web 服务器上,处理新来的请求和输出的响应.它与表示无关,实际上也不它应该与表示有关. 作为一名专业编程人员,您碰到的大多数 Java servlet 都是为响应 W ...

  5. docker 笔记 (5)常用命令

    images    显示镜像列表 history   显示镜像构建历史 commit    从容器创建新镜像 build     从 Dockerfile 构建镜像 tag       给镜像打 ta ...

  6. Git中远程仓库的使用

    1.查看当前的远程库 要查看当前配置有哪些远程仓库,可以用 git remote 命令,它会列出每个远程库的简短名字.在克隆完某个项目后,至少可以看到一个名为 origin 的远程库,Git 默认使用 ...

  7. 使用LaTeX按IEEE模板写论文时的参考文献管理方法(BibTeX使用小结)

    之前用LaTeX写论文时,参考文献都是手动添加管理的,真是让人很抓狂.所以这次趁着假期,简单看了一下怎么使用BibTeX对参考文献进行管理,这里以IEEE的最新模板为例. 首先说明,我之前用的是MiK ...

  8. ssh整合(dao使用hibernateTemplate)

  9. Consumer设计-high/low Level Consumer

    1 Producer和Consumer的数据推送拉取方式   Producer Producer通过主动Push的方式将消息发布到Broker n Consumer Consumer通过Pull从Br ...

  10. 【总结整理】WMS、WMTS、WFS

    参考:http://www.cnblogs.com/naaoveGIS/p/5508882.html WMTS:WMTS是OGC制定的一种发布瓦块地图的Web服务规范,wms主要是动态地图,wmts是 ...