![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数位dp
swqeaaa
有问题可以吻我
展开
-
洛谷P4163 排列 数位dp / 全排列
题意: 给一个数字串s和正整数d, 统计s有多少种不同的排列能被d整除(可以有前导0)。思路:next_permutation直接秒, 然而我用了数位dp...因为s最多只有10位, d只有1000, 所以dp用[10]记录pos到第几位, [2]*10记录某一位有没有用到, [1000]记录当前%d余数.因为记录某位置有没有用过, 这样做之后会有重复, 类似000会被记为6种. ...原创 2019-07-13 19:25:16 · 230 阅读 · 0 评论 -
HDU - 3709 Balanced Number 数位dp
Balanced NumberTime Limit: 10000/5000 MS (Java/Others)Memory Limit: 65535/65535 K (Java/Others)Total Submission(s): 7452Accepted Submission(s): 3567Problem DescriptionA balanced numbe...原创 2018-08-02 09:41:12 · 89 阅读 · 0 评论 -
HDU - 4389 X mod f(x) 数位dp
X mod f(x)Time Limit: 4000/2000 MS (Java/Others)Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 3619Accepted Submission(s): 1409Problem DescriptionHere is a function f(...原创 2018-08-02 09:41:07 · 193 阅读 · 0 评论 -
HDU - 3652 B-number 数位dp
B-numberTime Limit: 2000/1000 MS (Java/Others)Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 8375Accepted Submission(s): 4977Problem DescriptionA wqb-number, or B-numbe...原创 2018-08-02 09:41:00 · 71 阅读 · 0 评论 -
HYSBZ - 1026 windy数 数位dp
1026: [SCOI2009]windy数Time Limit:1 SecMemory Limit:162 MBSubmit:10067Solved:4659[Submit][Status][Discuss]Description windy定义了一种windy数。不含前导零且相邻两个数字之差至少为2的正整数被称为windy数。 windy想知道,在A和B之间...原创 2018-08-05 19:35:59 · 126 阅读 · 0 评论 -
好数 数位dp
好数Description今年是2019年,如果从一个数中删去所有的3,4,5,6,7,8后剩下的数按照与按顺序排列刚好等于2019,则称这个数为好数。例子:342560189,72019,2019是好数,12019,20219,9102456不是好数注意:如果删去所有的3,4,5,6,7,8后剩下的数还有前导零的话,我们也不能去除掉这些前导零,比如3002019,50002301...原创 2019-04-16 18:14:26 · 288 阅读 · 0 评论 -
HDU - 2089 不要62 数位dp
不要62Time Limit: 1000/1000 MS (Java/Others)Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 55712Accepted Submission(s): 21511Problem Description杭州人称那些傻乎乎粘嗒嗒的人为62(音:laoer)...原创 2018-08-02 09:40:53 · 74 阅读 · 0 评论 -
CodeForces 55 D 数位dp 数论 离散化
http://codeforces.com/problemset/problem/55/D题意: 问从l到r之间有多少个数x满足x%mul(x[i])==0, 其中mul(x[i])表示x各个位上的数的乘积(除0外).思路:数位dp写着个题需要两个前置储备:1: x对一系列的数的乘积(<x)取余 相当于 x对这一系列数的最小公倍数取余.所有x的x[i]能得出的乘积最...原创 2019-04-30 10:30:53 · 105 阅读 · 0 评论 -
SPOJ BALNUM Balanced Numbers 入门数位dp
https://www.spoj.com/problems/BALNUM/en/题意:如果一个数每个位上的奇数出现偶数次, 偶数出现奇数次, 那这个数是好数, 问区间内有多少个好数思路: 数位dp开20+3*10+2共12维空间, 20是数长度, 3*10表示0-9每个数出现的情况,0表示没出现过, 1表示出现奇数次, 2表示出现偶数次, 2表示是否还在前导零区域.#includ...原创 2019-04-30 10:44:06 · 145 阅读 · 0 评论 -
poj 3532 Round Numbers 入门数位dp
http://poj.org/problem?id=3252题意: 一个数二进制0的个数>=1的个数这个数就是round number,问有多少round number思路: 存s数组时存二进制即可.代码:#include<cstdio>#include<cstring>#define fuck(x) std::cout<<"["&l...原创 2019-04-30 10:56:06 · 104 阅读 · 0 评论 -
HDU 4734 F(x) 数位dp
TP题意:思路:代码:AC:#include<bits/stdc++.h>#define fuck(x) std::cout<<"["<<#x<<"->"<<x<<"]"<<endl;using namespace std;typedef long long ll;const ...原创 2019-05-13 11:26:10 · 78 阅读 · 1 评论 -
牛客 19多校7 H 数位dp
给出A, B, C, 在1~A中找一个数x, 1~B中找一个数y, 使得x&y>C或x^y<C, 问这样的二元组(x,y)有多少对.原来数位dp可以这么骚的...虽然大佬们说这是个裸题...因为^和&运算都是位运算, 所以把ABC都分为2进制表示.我们考虑最暴力的做法: 枚举x, 枚举y 判断是不是满足题意. 在这个过程中, 我们发现做了很多无用功, 例如,...原创 2019-08-08 23:27:33 · 144 阅读 · 0 评论