bzoj 4521 电话号码】的更多相关文章

题目大意: 求$[L,R]$中,满足不同时存在4和8且有连续三个一样的个数 思路: 我为什么要记忆化搜索里带-1啊 我可真是个** 直接记忆化搜索记前两位是否有4,8以及是否满足连续 #include<iostream> #include<cstdio> #include<cstring> #include<cstdlib> #include<cmath> #include<algorithm> #include<queue&g…
4521: [Cqoi2016]手机号码 Time Limit: 10 Sec  Memory Limit: 512 MBSubmit: 539  Solved: 325[Submit][Status][Discuss] Description 人们选择手机号码时都希望号码好记.吉利.比如号码中含有几位相邻的相同数字.不含谐音不 吉利的数字等.手机运营商在发行新号码时也会考虑这些因素,从号段中选取含有某些特征的号 码单独出售.为了便于前期规划,运营商希望开发一个工具来自动统计号段中满足特征的号码…
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=4521 数位DP,记录好多维状态: 写了半天,复杂得写不下去了,于是参考一下TJ... 练习简洁地写出数位DP. 代码如下: #include<iostream> #include<cstdio> #include<cstring> using namespace std; typedef long long ll; ll l,r,f[][][][][][],a[]…
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=4521 dfs真好用~ #include<iostream> #include<cstdio> #include<cstring> #include<algorithm> #define ll long long using namespace std; ; int dg[N]; ll l,r,dp[N][][N][][][]; ll dfs(int p…
SB数位dp. 我的貌似要特判9999999999的情况. #include<iostream> #include<cstdio> #include<cstring> #include<algorithm> using namespace std; ][][][][][],ret=,bit[]; void reset() { ;i<=;i++) ;j<=;j++) ;k<=;k++) ;l<=;l++) ;a<=;a++) ;b…
Description 在$[L, R]$找出有几个数满足两个条件 : 1 : 不同时含有$4$ 和 $8$ 2 : 至少有$3$个相邻的数相同 Solution 非常容易的数位DP, $pos$ 为当前第几位, $ex$ 表示是否出现过$4$ 或 $8$, $pre$表示 前面的是几, $num$表示有几个相邻的数相同. 答案就是 $sum[pos][ex][pre][num] $了QuQ. $DP$ 和 模板一样. 还需要注意如果$L = 1e10$ , 查$L - 1$ 时必须返回$0$…
感觉get到了一种数位dp的新姿势,加一位表示当前要填的数有没有限制(感觉以前的写法都太蠢了). 这么写有两个地方要注意: 1.每dp到一位时需要f[i][初始状态]++,相当于这位前都是前导零(这道题我把前两位填了两个10作为初始状态). 2.因为有了1,所以初始状态后的第一位不能填0,需要特判 f[i][j][k][l][p][q][o]表示填到第几位,上上位和上位分别是什么,4,8是否出现过,三个连续的是否出现过,以及当前位是否有限制. #include<iostream> #inclu…
比较基础的数位dp,dfs的时候带上上一位,上上位,是否已经有连续3个相同位,是否有4,是否有8即可 但是要注意两点(在洛谷上一直70) 当l=1e10的时候,直接输出clc(r)即可,因为如果再减去clc(l-1)的话,是会多减掉1的 还有判断前导0 #include<iostream> #include<cstdio> using namespace std; const int N=15; long long l,r,f[N][N][N][2][2][2],a[N],tot;…
数位DP AC十道题目以上 成就达成 八月份!三个月!想想就令人兴奋呢 开始写总结啦 貌似简单的数位DP只需要改改模板就可以啦 就按照我的做题顺序开始总结吧 先是学习了一发模板:http://www.cnblogs.com/jffifa/archive/2012/08/17/2644847.html 但是一开始学的不是很深刻,导致后来做题的时候犯了很多错误 hdu 2089 数字中不能出现62和4 一开始设计的状态是f[i][j]表示长度为i且上一个数字为j,然后写了一发过来 其实状态是可以精简…
2127: happiness Time Limit: 51 Sec  Memory Limit: 259 MBSubmit: 1815  Solved: 878[Submit][Status][Discuss] Description 高一一班的座位表是个n*m的矩阵,经过一个学期的相处,每个同学和前后左右相邻的同学互相成为了好朋友.这学期要分文理科了,每个同学对于选择文科与理科有着自己的喜悦值,而一对好朋友如果能同时选文科或者理科,那么他们又将收获一些喜悦值.作为计算机竞赛教练的scp大老板…