DFS
xtttgo
这个作者很懒,什么都没留下…
展开
-
HDU 5323Solve this interesting problem(DFS)
链接:http://acm.hdu.edu.cn/showproblem.php?pid=5323题目背景就是线段树。输入一个区间,问,能构成这个区间的线段树的最大区间是多少(总区间是【0,n】)。对于当前这个区间,向上dfs。dfs的理由,在代码里注释了#include#include#include#include#include#include#inc原创 2016-01-12 19:28:59 · 297 阅读 · 0 评论 -
HDU2211 杀人游戏(数学)
链接:http://acm.hdu.edu.cn/showproblem.php?pid=2211 我们已知n和k。 那么能得到一些信息: 每一轮之后,剩下的人是n - n / k。 最后剩下k个人的时候,杀掉最后第k个人之后游戏结束。 那么在最后k个人中,最后一个人当前编号为k,我们要求的是他在上一轮的编号是多少,如果能求出,那么一直求到原创 2016-02-12 14:50:33 · 1219 阅读 · 0 评论 -
HDU5692 Snacks(dfs序 + 线段树)
传送门:http://acm.hdu.edu.cn/showproblem.php?pid=5692 两场百度之星打的十分郁闷,但是也发现了我还是有很多的知识不能灵活运用,比如这题,dfs序我是懂的,线段树也是懂的,但是就是不知道怎么来做这题。 赛后看了takio菊苣的代码,觉得代码风格非常的清晰,很多地方加了空格以后看起来确实清楚很多。准备学习一下,虽然很影响手速,但是也慢慢改一原创 2016-05-23 13:01:33 · 596 阅读 · 0 评论 -
HDU 5723 Abandoned country (最小生成树+dfs)
传送门:http://acm.hdu.edu.cn/showproblem.php?pid=5723 题意:给你n个点和m条边,保证每条边权值不等,求最小生成树的权值。然后随机选两个点,求这两个点的距离的最小期望。 思路:第一问很容易,而且我们可以知道,因为权值都不等,所以最小生成树一定唯一。那么期望也就是:所有两个点的距离*选择两个点的概率。 概率就是1 / (n * (n - 1) / 2原创 2016-07-22 15:07:43 · 260 阅读 · 0 评论 -
HDU2586 How far away ?(tarjan+并查集离线求lca)
传送门:http://acm.hdu.edu.cn/showproblem.php?pid=2586 这题大概是个模板题,又学了一个新姿势。先dfs一遍,求出每个点到根节点的距离。然后将询问离线,开始求lca,在dfs的时候同时更新并查集,就能求出当前位置下的已访问过的两个点的lca,两个点#include <cstdio>#include <cstring>#include <algorit原创 2016-07-08 16:09:18 · 420 阅读 · 0 评论 -
HDU 5787 K-wolf Number (数位DP)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5787题意:求区间[L,R]内,任意相邻k位(如果位数不足k,就是全部的数位)没有两两相同的数位的数的个数。思路:数位DP,因为K<=5,我们最多需要保存下来当前位的前4位就足够了。 因为dp[pos][p1][p2][p3][p4]表示,现在枚举取第pos位,pos位之前的四位分别为p1,p2,p3,转载 2016-08-06 16:37:11 · 373 阅读 · 0 评论