题目背景

本题由世界上最蒟蒻最辣鸡最撒比的SOL提供。

寂月城网站是完美信息教室的官网。地址:http://191.101.11.174/mgzd 。

题目描述

辣鸡蒟蒻SOL是一个傻逼,他居然觉得数很萌!

好在在他眼里,并不是所有数都是萌的。只有满足“存在长度至少为2的回文子串”的数是萌的——也就是说,101是萌的,因为101本身就是一个回文数;110是萌的,因为包含回文子串11;但是102不是萌的,1201也不是萌的。

现在SOL想知道从l到r的所有整数中有多少个萌数。

由于答案可能很大,所以只需要输出答案对1000000007(10^9+7)的余数。

输入格式

输入包含仅1行,包含两个整数:l、r。


还以为我这个辣鸡会被卡时
没想到这么水???
你记录一下last,last1来判断是否存在长度至少为2的回文子串
并用flag表示来的路上是否已经存在
注意前导0隔位回文是错的
你在遍历一下l是不是符合条件的数,减去
#include<bits/stdc++.h>
#define re return
#define ll long long
#define inc(i,l,r) for(ll i=l;i<=r;++i)
using namespace std;ll n,m,len,num[1002],f[1005][2][10][10];
ll mod=1000000007;template<typename T>inline void rd(T&x)
{len=0;char c;bool f=0;while((c=getchar())<'0'||c>'9');num[++len]=c^48;while((c=getchar())>='0'&&c<='9')num[++len]=c^48;
}inline ll dfs(int pos,int limit,int flag,int last,int last1,int lead)
{if(pos==len+1)re flag;if(lead&&!limit&&(~last1)&&(~f[pos][flag][last][last1]))re f[pos][flag][last][last1];int up=limit?num[pos]:9;ll res=0;inc(i,0,up){if(flag)res=(res+dfs(pos+1,limit&&i==up,flag,i,last,1))%mod;else res=(res+dfs(pos+1,limit&&i==up,lead&&(last==i|last1==i),i,lead?last:-1,lead|i))%mod;}if(!limit&&(~last1))f[pos][flag][last][last1]=res;re res;
}inline bool judge()
{if(num[2]==num[1])re 1;inc(i,3,len){if(num[i]==num[i-1])re 1;if(num[i]==num[i-2])re 1;}re 0;
}
int main()
{freopen("in.txt","r",stdin); memset(f,-1,sizeof f);rd(n);ll ans1=dfs(1,1,0,-1,-1,0)-judge();rd(m);ll ans2=dfs(1,1,0,-1,-1,0);printf("%lld",(ans2-ans1+mod)%mod);re 0;
}   

转载于:https://www.cnblogs.com/lsyyy/p/11391435.html

SAC#1 - 萌数相关推荐

  1. 洛谷P3413 SAC#1 - 萌数(数位dp)

    题目描述 辣鸡蒟蒻SOL是一个傻逼,他居然觉得数很萌! 好在在他眼里,并不是所有数都是萌的.只有满足"存在长度至少为2的回文子串"的数是萌的--也就是说,101是萌的,因为101本 ...

  2. luogu 3413 SAC#1 - 萌数

    题目描述 辣鸡蒟蒻SOL是一个傻逼,他居然觉得数很萌! 好在在他眼里,并不是所有数都是萌的.只有满足"存在长度至少为2的回文子串"的数是萌的--也就是说,101是萌的,因为101本 ...

  3. 洛谷 P3413 SAC#1 - 萌数(数位dp)

    题目背景 本题由世界上最蒟蒻最辣鸡最撒比的SOL提供. 寂月城网站是完美信息教室的官网.地址:http://191.101.11.174/mgzd . 题目描述 辣鸡蒟蒻SOL是一个傻逼,他居然觉得数 ...

  4. 洛谷P3413 SAC#1 - 萌数【数位DP】

    时空限制 1000ms / 128MB 题目描述 辣鸡蒟蒻SOL是一个傻逼,他居然觉得数很萌! 好在在他眼里,并不是所有数都是萌的.只有满足"存在长度至少为2的回文子串"的数是萌的 ...

  5. [LUOGU3413] SAC#1 - 萌数

    题目背景 本题由世界上最蒟蒻最辣鸡最撒比的SOL提供. 寂月城网站是完美信息教室的官网.地址:http://191.101.11.174/mgzd . 题目描述 辣鸡蒟蒻SOL是一个傻逼,他居然觉得数 ...

  6. luogu3413 萌数

    https://www.luogu.org/problem/P3413 数位dp题 直接算萌数不容易,但直接算非萌数比较容易 一个非萌数只要满足对于任意一位$i$,$num[i]!=num[i+1] ...

  7. 洛谷 3413 萌数

    Description 辣鸡蒟蒻SOL是一个傻逼,他居然觉得数很萌! 好在在他眼里,并不是所有数都是萌的.只有满足"存在长度至少为2的回文子串"的数是萌的--也就是说,101是萌的 ...

  8. [Luogu] P3413 萌数

    题目背景 本题由世界上最蒟蒻最辣鸡最撒比的SOL提供. 寂月城网站是完美信息教室的官网.地址:已和谐 . 题目描述 辣鸡蒟蒻SOL是一个傻逼,他居然觉得数很萌! 好在在他眼里,并不是所有数都是萌的.只 ...

  9. 数位dp 的简单入门

    时间紧张,就不讲那么详细了. 之前一直被深搜代码误解,以为数位dp 其实就是记忆化深搜...(虽说爆搜确实很舒服而且还好想) 但是后来发现数位dp 的标准格式其实是 预处理 + dp ...... 数 ...

最新文章

  1. 一款强大而实用的图片去水印神器
  2. orm框架选型问题_ORM问题
  3. iOS屏幕旋转 浅析
  4. python-正则表达式1909
  5. VC自定义消息postmessage用法(消息响应函数)
  6. python爬虫之 ---------------- 正则表达式(1)
  7. 《C++并发编程实战》——1.1 什么是并发
  8. maven 从入门到实战
  9. 叶子的离开,是因为风的追求,还是树的不挽留
  10. 一个解决OnNcLButtonUp不能响应消息问题的更好办法
  11. oa系统在线试用,零成本开始研发协作免费试用
  12. 数据集Freebase-FB13
  13. Guarded Suspension模式:等待唤醒机制
  14. velodyne运行Loam_velodyne过程记录
  15. pcie转m2装系统win10_m.2固态硬盘怎么装win10教程|m.2固态硬盘装win10教程步骤
  16. DIV布局 旅游出行网站设计——武汉旅游(11页) HTML+CSS+JavaScript dreamweaver作业静态HTML网页设计模板
  17. spring boot框架常用的一些玩意儿
  18. 9.1 了解导航窗格
  19. 星际密码———递归式
  20. java使用scanner.next方式接收键盘输入

热门文章

  1. 一次测试环境请求反应缓慢问题排查过程
  2. 判断集合关系(自反,反自反,对称,反对称,传递)
  3. Linux命令:stat
  4. 关于项目管理——里程碑管理的重要性
  5. 智能座舱领域专业术语
  6. 利用kettle进行数据库数据比对
  7. Python 查找二叉树的节点数目
  8. CAD中如何绘制多段线?CAD多段线是干什么用的?
  9. A - 检查宿舍卫生
  10. SLAM轨迹按时间插值