
DP
文章平均质量分 60
DP
西伯利亚松鼠
退役ACMer,退役MOer
展开
-
SPOJ 10606 数位DP
SPOJ-10606solution坑点在于前导零对于统计 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 · 269 阅读 · 0 评论 -
P4124 [CQOI2016]手机号码 数位DP
P4124 [CQOI2016]手机号码solutiondp[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 · 212 阅读 · 0 评论 -
2021“MINIEYE杯”中国大学生算法设计超级联赛(2) I love max and multiply HDU-6971 SOSDP
I love max and multiplysolution/*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 · 187 阅读 · 0 评论 -
Xieldy And His Password 牛客 DP
Xieldy And His Passwordsolutiondp[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 · 122 阅读 · 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 · 1011 阅读 · 0 评论 -
Codeforces Round #715 (Div. 2) C. The Sports Festival 区间DP
C. The Sports Festivalsolution刚开始贪了两拨,WA5两发,先排序,然后每次都是比较头尾,留少的。然后学了一点区间DPdp[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 · 831 阅读 · 0 评论 -
Codeforces Round #198 (Div. 2) E. Iahub and Permutations DP
E. Iahub and Permutationssolutionn个数,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 · 787 阅读 · 1 评论 -
Hatsune Miku HDU-5074 DP
Hatsune Mikucode#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 · 1074 阅读 · 0 评论 -
2014ACM/ICPC亚洲区广州站 I-Little Zu Chongzhi‘s Triangles 状压DP
HDU-5135code/*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 · 804 阅读 · 0 评论