DP
文章平均质量分 60
DP
西伯利亚松鼠
退役ACMer,退役MOer
展开
-
SPOJ 10606 数位DP
SPOJ-10606 solution 坑点在于前导零对于统计 000 的个数的影响. dp[pos][num][appear]dp[pos][num][appear]dp[pos][num][appear] num−>100000101num->100000101num−>100000101 以此为例,表示 0,3,90,3,90,3,9 个数均为奇数. appear−>101100101appear->101100101appear−>101100101 以此为例,原创 2021-08-12 10:42:40 · 214 阅读 · 0 评论 -
P4124 [CQOI2016]手机号码 数位DP
P4124 [CQOI2016]手机号码 solution dp[pos][state][is4][is8]dp[pos][state][is4][is8]dp[pos][state][is4][is8]state=0,表示当前数字没有连续state=0,表示当前数字没有连续state=0,表示当前数字没有连续state=1,表示当前连续两个相同数字state=1,表示当前连续两个相同数字state=1,表示当前连续两个相同数字state=2,表示三个连续数字state=2,表示三个连续数字state=2原创 2021-08-06 20:18:29 · 165 阅读 · 0 评论 -
2021“MINIEYE杯”中国大学生算法设计超级联赛(2) I love max and multiply HDU-6971 SOSDP
I love max and multiply solution /*SiberianSquirrel*//*CuteKiloFish*/ #include <bits/stdc++.h> using namespace std; #define gcd(a,b) __gcd(a,b) #define lcm(a,b) (1ll * a * b / gcd(a, b)) #define Polynomial vector<int> #define Inv(x) quick_pow(原创 2021-07-28 11:25:25 · 158 阅读 · 0 评论 -
Xieldy And His Password 牛客 DP
Xieldy And His Password solution dp[i][j]表示第i位为止有多少%3=j的方案数dp[i][j]表示第i位为止有多少\%3=j的方案数dp[i][j]表示第i位为止有多少%3=j的方案数 记前一个状态为tempi−1,记前一个状态为temp_{i-1},记前一个状态为tempi−1, s[i]==1时,tempi=(tempi−1∗2+1)%3s[i]==1时,temp_i=(temp_{i-1}*2+1)\%3s[i]==1时,tempi=(tempi−1∗2原创 2021-07-14 15:18:22 · 100 阅读 · 0 评论 -
小V和方程 牛客 DP 整数拆分
小V和方程 solution ∑i=1nxi=m=>∑i=1nai2x=A2x\sum\limits_{i=1}^{n}\sqrt {x_i}=\sqrt{m}=>\sum\limits_{i=1}^{n}\sqrt {a_i^2x}=\sqrt{A^2x}i=1∑nxi=m=>i=1∑nai2x=A2x ∑i=1naix=Ax\sum\limits_{i=1}^{n}a_i\sqrt {x}=A\sqrt{x}i=1∑naix=Ax ∑i=1nai=A\sum\原创 2021-05-22 14:17:02 · 948 阅读 · 0 评论 -
Codeforces Round #715 (Div. 2) C. The Sports Festival 区间DP
C. The Sports Festival solution 刚开始贪了两拨,WA5两发,先排序,然后每次都是比较头尾,留少的。 然后学了一点区间DP dp[i][j]=min(dp[i][j],min(dp[i+1][j],dp[i][j−1])+a[j]−a[i])dp[i][j]=min(dp[i][j],min(dp[i+1][j], dp[i][j-1])+a[j]-a[i])dp[i][j]=min(dp[i][j],min(dp[i+1][j],dp[i][j−1])+a[j]−a[i])原创 2021-05-08 11:17:15 · 765 阅读 · 0 评论 -
Codeforces Round #198 (Div. 2) E. Iahub and Permutations DP
E. Iahub and Permutations solution n个数,ans个填−1的位置,res个已有数字且该数字原位置为−1的位置(万能)n个数,ans个填-1的位置,res个已有数字且该数字原位置为-1的位置(万能)n个数,ans个填−1的位置,res个已有数字且该数字原位置为−1的位置(万能) 传统错排:dp[i]=(i−1)(dp[i−1]+dp[i−2])传统错排:dp[i] = (i -1)(dp[i-1]+dp[i-2])传统错排:dp[i]=(i−1)(dp[i−1]+dp[i−原创 2021-05-03 22:54:55 · 753 阅读 · 1 评论 -
Hatsune Miku HDU-5074 DP
Hatsune Miku code #include <bits/stdc++.h> using namespace std; int sco[110][110]; int idx[110]; int dp[110][110]; void solve() { int o; cin >> o; while(o --) { int n, m; cin >> n >> m; for(int i =原创 2021-04-11 20:22:15 · 801 阅读 · 0 评论 -
2014ACM/ICPC亚洲区广州站 I-Little Zu Chongzhi‘s Triangles 状压DP
HDU-5135 code /*SiberianSquirrel*/ /*CuteKiloFish*/ #include<bits/stdc++.h> using namespace std; int n; double t[15]; double dp[1<<13]; vector<int> v; bool check(double a, double b, double c) { return a + b > c && fabs(c原创 2021-03-31 13:16:45 · 768 阅读 · 0 评论