深度优先搜索(DFS)
深度优先搜索(DFS)
Stockholm_Sun
这个作者很懒,什么都没留下…
展开
-
差分约束系统
差分约束系统山东省聊城第一中学 孙玉泰(Stockholm_Sun)绪言在我学习差分约束系统的时候,网络上的blog并不能很好的给我一个思路,这说明讲解这个系统绝非易事,那么接下来的讲解将较多的借鉴百度百科的资料,结合自己的思想来讲解,然后希望大家能坚持读完这些,因为这些都是我自认为比较通俗的,毕竟OI是一个比较艰辛的道路,大家一起努力吧。预备定义差分又名差分函数或差分运算,差分的结果反映了离散量之原创 2017-08-17 11:23:40 · 519 阅读 · 0 评论 -
[ZJOI2007]时态同步(树形DP+DFS)
P1131 [ZJOI2007]时态同步 题目描述 小Q在电子工艺实习课上学习焊接电路板。一块电路板由若干个元件组成,我们不妨称之为节点,并将其用数字1,2,3….进行标号。电路板的各个节点由若干不相交的导线相连接,且对于电路板的任何两个节点,都存在且仅存在一条通路(通路指连接两个元件的导线序列)。 在电路板上存在一个特殊的元件称为“激发器”。当激发器工作后,产生一个激励电流,通过导线传向每一原创 2017-09-24 11:49:10 · 354 阅读 · 0 评论 -
LCA Tarjan实现
Tarjan LCA以前认为Tarjan算法只是用来解强连通分量的算法,后来发现LCA也有一个Tarjan算法。 下面借一个树来了解一下算法思路。(树已经横向放置) 询问组: 11 9 10 8 6 7 1 5 2 3 这个算法最好亲手模拟一遍,然后就会感到茅塞顿开。 先从1节点开始DFS深度优先遍历(左节点优先)。 1->2->4->8->10。 发现10没有子节点,找所原创 2017-08-15 17:29:38 · 402 阅读 · 4 评论 -
洛谷的文件夹(树形结构+DFS+字符串哈希)
洛谷的文件夹Luogu P1738题目描述kkksc03是个非凡的空想家!在短时间内他设想了大量网页,然后总是交给可怜的lzn去实现。 洛谷的网页端,有很多文件夹,文件夹还套着文件夹。 例如:/luogu/application/controller表示根目录下有一个名称为luogu的文件夹,这个文件夹下有一个名称application的文件夹,其中还有名为controller的文件夹。 每个原创 2017-10-24 17:59:04 · 489 阅读 · 0 评论 -
淘汰赛制(NOI导刊2010提高 01)
淘汰赛制(NOI导刊2010提高 01)题目描述 淘汰赛制是一种极其残酷的比赛制度。2n名选手分别标号1,2,3,…,2^n-1,2^n,他们将要参加n轮的激烈角逐。每一轮中,将所有参加该轮的选手按标号从小到大排序后,第1位与第2位比赛,第3位与第4位比赛,第5位与第6位比赛……只有每场比赛的胜者才有机会参加下一轮的比赛(不会有平局)。这样,每轮将淘汰一半的选手。n轮过后,只剩下一名选手,该选手即原创 2017-08-23 10:18:19 · 704 阅读 · 0 评论 -
跳跃版图(记忆化搜索,DP)
题目描述 有一个 n×n 的格子,每个格子中有一个非负整数。你的目标是从左上角跳到右下角,每步只能向右或向下跳。格子中的数代表从该格开始跳跃的前进步数,如果某次跳跃会跃出格子界限则该跳跃是禁止的。注意 0 是一个绝对终点,因为从这里无法再移动。你的任务是统计有多少种合法路径。 数据规模 3<=n<=100。 思路 这个题是一个比较裸的记忆化搜索,从(1,1)开始朝两个方向深度优先搜索,搜索原创 2017-08-23 10:03:23 · 363 阅读 · 0 评论 -
全排列问题(STL)
全排列问题(STL)题目描述 输出自然数1到n所有不重复的排列,即n的全排列,要求所产生的任一数字序列中不允许出现重复的数字。 每个数字保留5个常宽。数据规模 1<=N<=9思路 今天只是想借这个水题讲讲STL库里面的next_permutation()函数,话说STL是真好用,具体实现看代码吧。注意库是< algorithm >。 应用就是枚举全排列。 代码#include<iostr原创 2017-08-25 11:17:59 · 541 阅读 · 0 评论 -
选课(动态规划与DFS在多叉树中的应用)
选课(来源:Luogu P2014) 题目描述在大学里每个学生,为了达到一定的学分,必须从很多课程里选择一些课程来学习,在课程里有些课程必须在某些课程之前学习,如高等数学总是在其它课程之前学习。现在有N门功课,每门课有个学分,每门课有一门或没有直接先修课(若课程a是课程b的先修课即只有学完了课程a,才能学习课程b)。一个学生要从这些课程里选择M门课程学习,问他能获得的最大学分是多少?输入输出格式输原创 2017-07-17 11:10:13 · 855 阅读 · 0 评论 -
最近公共祖先(LCA)及其倍增算法实现
最近公共祖先(LCA)今天看看最近公共祖先(LCA),也就是所谓的最小公共祖先。 我们首先了解一下什么是LCA,我们通过几棵树来理解一下吧。 如图所示,这棵树是以1为根节点的一棵树,我们举一个例子,3和5的LCA就是2,4和5的LCA就是1,3和2的LCA就是2本身。是不是有点明白? 接下来,我们不改变节点间的关系,只改变根节点。 如图所示,我们把2作为根节点,那么这棵二叉树俨然就变原创 2017-07-21 15:27:16 · 4547 阅读 · 10 评论 -
[HAOI2016]食物链
[HAOI2016]食物链 (来自Luogu) 题目概述: 现在给你n个物种和m条能量流动关系,求其中的食物链条数。 注意单独的一种孤立生物不算一条食物链。 数据规模: 全部输入数据在int范围内,N<=100000,M<=200000 思路: DP(记忆化搜索)的一道题目,有点不理解为啥是省选题目,然后几点需要强调的,首先单独的一种孤立生物不算一条食物链,这就是说,就算是某一个点入原创 2017-08-18 09:59:07 · 1880 阅读 · 0 评论