DP
Anoyer
这个作者很懒,什么都没留下…
展开
-
CCPC-Wannafly Winter Camp Day4 (Div2, onsite) G 置置置换 DP
G - 置置置换 定义dp[i][j]为 i个数的排列中,最后一个数字为j 当i为偶数的时候,位于山谷,需要前面大于他 dp[i][j]+=dp[i-1][k], j<=k<=i-1 之所以可以这么写是因为,前面并没有出现i这个数字,所以也没有计算dp[i-1][i],但是有个巧妙的做法 假设把前面所有大于等于j的数+1,就刚好解决这个问题了。 当i为奇数的时候,位于山峰,需要前面小于...原创 2019-01-24 22:32:32 · 482 阅读 · 0 评论 -
CCPC-Wannafly Winter Camp Day1 (Div2, onsite) E 流流流动 树形DP
E - 流流流动 直接连边树形dp计算。需要注意的是图并非联通,可以使用并查集,判断这个集合是否已经处理过。 #include<bits/stdc++.h> using namespace std; const int maxn=110; vector<int> e[maxn]; void add(int u,int v){e[u].push_back(v),e[v].pu...原创 2019-01-25 22:56:08 · 363 阅读 · 0 评论 -
CCPC-Wannafly Winter Camp Day1 (Div2, onsite) B 吃豆豆 DP
B-吃豆豆 思路:3维DP维护一个3维数组,表示(i,j)位置第K秒有多少糖果,通过k-1秒5个位置转移得到(i,j,k) #include&amp;amp;lt;stdio.h&amp;amp;gt; #include&amp;amp;lt;bits/stdc++.h&amp;amp;gt; using namespace std; typedef long long ll; const int maxn=1200; int d原创 2019-01-22 10:54:55 · 474 阅读 · 0 评论