数位dp
Ripped
我那么浮躁却想要读懂你的生活
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【BZOJ 4521】【CQOI 2016】手机号码
和山东省选的储能表很像,都是带上限的数位dp,先差分一下,然后询问两次即可。这里要注意10^10如果减1就变成10位数了,所以这里是加1。 用f[i][j][a][b][c][d][e]来表示。。。 做到第i位,上一位是j(第0位就用10表示),a表示最后两位是否一样,b表示是否已经出现连续三个数相等,c表示是否有4,d表示是否有8,e表示是否小于上限。#include<cmath>#incl原创 2017-03-06 15:17:55 · 413 阅读 · 0 评论 -
【BZOJ 4513】【SDOI 2016】储能表
对每一位数字考虑,假设横坐标和纵坐标为x和y,对于每一位的(x,y)都有4种情况。 令f/g[i][a][b][c]表示第i位上: a=0:x#include<cmath>#include<cstdio>#include<vector>#include<cstring>#include<iomanip>#include<stdlib.h>#include<iostream>#inc原创 2017-02-27 18:07:44 · 547 阅读 · 0 评论
分享