随笔分类 - dp -- 数位dp
摘要:链接 : C. Moamen and XOR 题意 : 给定 \(n\) 个数和 \(k\), 保证每个数 \(a_i\lt 2^k\), 问使得 \(a_1 \ \&\ a_2\ \&\ a_3\ \&\ ...\ \&\ a_n \ge a_1 \oplus a_2 \oplus a_3 \op
阅读全文
摘要:http://codeforces.com/contest/1513/problem/C dp $f[i][j]:$表示当前数位上为i(0~9), 加法次数为j最终形成的数位. f[i][j] = f[i - 1][j + 1]; f[9][j] = f[1][j + 1] + f[0][j + 1
阅读全文
摘要:https://www.acwing.com/problem/content/1086/ \(cpp负数的取模:(-a)\%b (a\%b)\) 状态表示 \(f[i][j][x]:有i位最高位位j且所有位之和对p取模的值为x\) 状态计算 \(f[i][j][x]+=f[i-1][k][mod(x
阅读全文
摘要:https://www.acwing.com/problem/content/1085/ \(此题需要注意的是要去前导零, 前面2道题可以直接把不足n位的数看成补上前导零的数, 这样做处理起来很方便, 但是此题不行.\) $本题如果也把不足n位的数看成补上前导零去算, last的更新会出现问题导致循
阅读全文
摘要:https://www.acwing.com/problem/content/1084/ \(f[i][j]:有i位且最高位为j的不增数.\) #include <bits/stdc++.h> using namespace std; #define IO ios::sync_with_stdio(
阅读全文
摘要:https://www.acwing.com/problem/content/1083/ 思路 这个题相当于把一个数字转化为$b$进制, 然后去看小于等于它的数中有多少个在$b$进制下, 有$k$个$1$且其他位全部为0. \(对于每一位x, 左边的分支为该位取0到x-1,首先该位可取0,然后有两种
阅读全文

浙公网安备 33010602011771号