无尽

The road ahead will be long. Our climb will be steep.

排序:
默认
按更新时间
按访问量

BZOJ 5109 [CodePlus 2017]大吉大利,晚上吃鸡!

最短路+bitset+DP 个人觉得这题的思路非常高妙。 首先肯定是要建出最短路DAG,这个图上任意一条路径都对应一条原图的最短路。 如果一个点a在S到T的必经之路上,那就会有 S到a的方案数 * a到T的方案数 = S到T的方案数 这个东西显然是充要的,这是一个巧妙的转化。套用这个想法...

2018-08-19 00:22:49

阅读数:64

评论数:0

51Nod 1608 管道安装

一道观察性质好题- -。一个朴素的做法是插头DP,然而这题数据范围太大,考虑题目性质。 来个例子”L12”,其中12表示还没有填,L表示这个位置放了一个L形的管道。仔细观察可知此时1必有左插头,2不能有左插头因此必有右插头。类似地我们可以完全把一整行的左右插头确定下来。确定完之后我们可以保证这一行...

2017-04-02 00:30:03

阅读数:210

评论数:0

BZOJ 3162 独钓寒江雪

树哈希+树形DP+组合计数VFK题解里用的是直径的中心,然而我用的是重心,不过基本没区别。所有独立集计数记f[i][0/1]表示i取或不取,子树内独立集个数。要求本质不同,那我们希望拿一个点r出来当根,尽量让以r为根的有根树形态唯一,即不存在树内一点u,使得u当根和r当根时结构一样。重心是一个不错...

2017-02-25 14:02:29

阅读数:221

评论数:0

BZOJ 4559 [JLoi2016]成绩比较

DP+组合计数不难想到记f[i][j]表示统计到第i门课,此时j个人被碾压的方案数。 f[i][j] = f[i-1][k] * C[k][j] * C[n-k-1][n-rank[i]-j] * P[i] (k >= j) 意义就是从前面的k个人里面选出j个人继续碾压,再选出一些人来排...

2017-02-22 15:09:05

阅读数:561

评论数:0

BZOJ 3622 已经没有什么好害怕的了

DP+容斥然而这题还是令我很害怕。 最值问题的DP一般考虑排序之后从小到大或从大到小,一个一个地考虑。对于这题,对A,B排序,记next[i]=j,表示最大的j满足B[j] < A[i],不难想到方程f[i][j]表示做到A的第i个,其中已经有j对满足A>B,然后转移 f[i][j...

2017-01-18 20:51:01

阅读数:192

评论数:0

BZOJ 4011 [HNOI2015]落忆枫音

拓扑图DP对于拓扑图,deg[i]表示i的入度,根为1,答案就是 ∏ni=2deg[i]\prod_{i=2}^{n} deg[i]即除根节点外,每个点都选择一条入边,由于图是DAG,因此一定会形成一个树形图(听说这是朱刘算法的推论?)考虑加完边之后有环怎么办?只要在答案里减去环的贡献即可。如何求...

2016-09-28 14:24:52

阅读数:182

评论数:0

BZOJ 4562 [Haoi2016]食物链

DAG+DPf[i]表示方案数,于是可以从i的所有儿子转移来。方便起见我加的是反边。#include<cstdio> #include<queue> #define N 100005 #define M 200005 using namespace std; queue&l...

2016-09-14 10:17:24

阅读数:124

评论数:0

BZOJ 4455 & UOJ 185 [ZJOI2016]小星星

容斥原理+树形DP首先有一个暴力的想法,f[i][j][sta]表示树中i与图中k对应,i的子树与sta(状压)对应,然后大力转移。这需要枚举子集,复杂度约O(n2∗3n)O(n^2*3^n)考虑枚举状态sta表示图中可用点范围,记f[i][j]表示i和j对应,但对应可以重复,即可以不一一对应。最...

2016-09-10 11:47:53

阅读数:249

评论数:0

BZOJ 1025 [SCOI2009]游戏

将各个数字与它的对应数字连边,就可以得到若干个环。排数就是这些环的最小公倍数,且节点数为n。于是题意就是问和为n的若干个数的最小公倍数(LCM)有多少种。记f[i][j]表示前i个质数的和为j时的LCM方案数。f[i][j]=f[i-1][j]+∑q[i]k≤jk=1f[i−1][j−q[i]k]...

2016-08-01 13:33:32

阅读数:205

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭