摘要:传送门 题意:给你n个门的状态1表示开,每个门被两个开关控制然后给你每个开关控制哪些门的信息,问你能不能将这些门全部打开 题解:2-sat。对于已经开了的门,要么控制它的两个开关都开,要么都关,对于没有开的门只能一个开关开,一个关。 开和关是两种状态,我们将属于同一种状态的开关并查集合到一起,然后c 阅读全文
posted @ 2018-05-28 10:55 采蘑菇的小西佬 阅读(56) 评论(0) 推荐(0) 编辑
摘要:传送门 题意:给你一棵树,如果有两条完全相同的链存在则可以关于中间进行折叠,即合成一条链,问你最后剩下的最少的边有多少。不能合并则输出-1 题解:dfs处理,对每一个节点开一个set记录儿子链的长度,如果只有一种长度(可能出现两种情况,一种就是有多条链,但是长度都相同,或者只有一条链但是他们不管是合 阅读全文
posted @ 2018-05-28 10:47 采蘑菇的小西佬 阅读(123) 评论(0) 推荐(0) 编辑
摘要:传送门 题意:给你一个函数f[x],问你是否存在满足 g(h(x)) = x for all , and h(g(x)) = f(x) for all , 的两个函数 题解:先化简公式得到一个构造g(x)的公式,g(x)=g(f(x)),并查集将x和f(x)捆绑起来,然后for一遍g(x)这个函数, 阅读全文
posted @ 2018-05-28 10:34 采蘑菇的小西佬 阅读(59) 评论(0) 推荐(0) 编辑
摘要:传送门 题解:最小路径覆盖等于点数-匹配数。网络流或者km跑一下二分图记录路径就可以解决 阅读全文
posted @ 2018-05-28 10:26 采蘑菇的小西佬 阅读(94) 评论(0) 推荐(0) 编辑
摘要:传送门 题意:给你一棵树,询问u到v路径上的第k大 题解:从u到v的路径能想到,u到根+v到根-lca(u,v)到根-fa[lca(u,v)]到根剩下的就是u到v之间的路径。因此只要离散化一下,每次dfs的时候处理倍增lca和主席树更新操作就可以 阅读全文
posted @ 2018-05-27 22:38 采蘑菇的小西佬 阅读(49) 评论(0) 推荐(0) 编辑
摘要:传送门 题解:这题就是HDU2732的中文题面。。。蜥蜴跳的距离是曼哈顿距离。建一个源点对每一个L所在的地方建一个容量为1的边,对柱子如果能跳出去就与汇点建一个容量为柱子容量的边,柱子的出点与入点建一个容量INF的边,柱子与柱子之间只要满足条件就将一个柱子的出点,与另一个柱子的入点建一条为柱子容量的 阅读全文
posted @ 2018-05-27 22:27 采蘑菇的小西佬 阅读(149) 评论(0) 推荐(0) 编辑
摘要:传送门 题解:设p为素数 ,则gcd(x/p,y/p)=1也就是说求 x/p以及 y/p的欧拉函数。欧拉筛+前缀和就可以解决 阅读全文
posted @ 2018-05-27 22:17 采蘑菇的小西佬 阅读(45) 评论(0) 推荐(0) 编辑
摘要:传送门 题解:枚举每一对天数 跑n*n/2次最短路,每次跑最短路之前都要传递闭包处理出能不能经过这个码头。 状态转移方程ans[i]=min(ans[i],ans[j]+dp[j+1][i]+k); 第i天的最小成本是由第j天加上j+1天到i天的成本+转移路线的花费 阅读全文
posted @ 2018-05-27 22:13 采蘑菇的小西佬 阅读(89) 评论(0) 推荐(0) 编辑
摘要:传送门 题解:二维dp,第一维记录位置,第二维记录前一个。 阅读全文
posted @ 2018-05-27 21:59 采蘑菇的小西佬 阅读(72) 评论(0) 推荐(0) 编辑
摘要:传送门 题解:开个6维的dp函数,第一维记录位置,第二维记录当前位置的前两个,第三维记录当前位置的前一个,第四维记录是否出现4,第五位记录是否出现8,第六维记录是否满足出现三个连续的数字。特判1e10 阅读全文
posted @ 2018-05-27 21:56 采蘑菇的小西佬 阅读(58) 评论(0) 推荐(0) 编辑