随笔分类 - 图论
摘要:题意:有向图有N个点,当电车进入交叉口(某点)时,它只能在开关指向的方向离开。 如果驾驶员想要采取其他方式,他/她必须手动更换开关。当驾驶员从路口A驶向路口B时,他/她尝试选择将他/她不得不手动更换开关的次数最小化的路线。 编写一个程序,该程序将计算从交点A到交点B所需的最小开关更改次数。第i个交点
阅读全文
摘要:7-9 拯救007(25 分) 在老电影“007之生死关头”(Live and Let Die)中有一个情节,007被毒贩抓到一个鳄鱼池中心的小岛上,他用了一种极为大胆的方法逃脱 —— 直接踩着池子里一系列鳄鱼的大脑袋跳上岸去!(据说当年替身演员被最后一条鳄鱼咬住了脚,幸好穿的是特别加厚的靴子才逃过
阅读全文
摘要:题意: 问题描述 G国国王来中国参观后,被中国的高速铁路深深的震撼,决定为自己的国家也建设一个高速铁路系统。 建设高速铁路投入非常大,为了节约建设成本,G国国王决定不新建铁路,而是将已有的铁路改造成高速铁路。现在,请你为G国国王提供一个方案,将现有的一部分铁路改造成高速铁路,使得任何两个城市间都可以
阅读全文
摘要:题意:有N个点,M条边,每个点有权值,问从起点到终点最短路的个数以及权值最大的最短路的权值。 分析:修改Dijstra模板。
阅读全文
摘要:题意:有n个有小写字母组成的字符串,将部分小写字母改成对应的大写字母,注意某种小写字母更改,所有的这种小写字母都会更改。若能使这给定的n个字符串符合字典序由小到大排序,则输出Yes,并输出需要修改的字母。定义所有的大写字母字典序小于小写字母。 分析: 1、起决定作用的是前后两个字符串中第一个不同的字
阅读全文
摘要:题意:A市有n个交通枢纽,其中1号和n号非常重要,为了加强运输能力,A市决定在1号到n号枢纽间修建一条地铁。地铁由很多段隧道组成,每段隧道连接两个交通枢纽。经过勘探,有m段隧道作为候选,两个交通枢纽之间最多只有一条候选的隧道,没有隧道两端连接着同一个交通枢纽。现在有n家隧道施工的公司,每段候选的隧道
阅读全文
摘要:题意:给定一个n个点的树,该树同时也是一个二分图,问最多能添加多少条边,使添加后的图也是一个二分图。 分析: 1、通过二分图染色,将树中所有节点分成两个集合,大小分别为cnt1和cnt2。 2、两个集合间总共可以连cnt1*cnt2条边,给定的是一个树,因此已经连了n-1条边,所以最多能连cnt1*
阅读全文
摘要:题意:有n个点,n-1条边的无向图,已知每个点书的售价,以及在边上行走的路费,问任选两个点作为起点和终点,能获得的最大利益是多少。 分析: 1、从某个结点出发,首先需要在该结点a花费price[a]买书,然后再在边上行走,到达目的地后,在目的地b获得price[b]。 2、因此可以建立两个虚拟结点,
阅读全文
摘要:题意:求次短路。 分析:关键是情况讨论。 LL tmpd = x.d + e.dist; 以下情况对应的更新结果 1、tmpd(2) < 最短路(3) < 次短路(4) > 最短路 = 2,次短路 = 3 2、tmpd(2) = 最短路(2) < 次短路(3) > 最短路 = 2,次短路 = 2 3
阅读全文
摘要:题意:N个点,M条路,每条路的危险度为路上各段中最大的危险度。多组询问,点s到点t的所有路径中最小的危险度。 分析: 1、首先建个最小生成树,则s到t的路径一定是危险度最小的。 原因:建最小生成树的最后一步,如果有两个相等的边可以选择,然后将两个连通块连在一起。 那不管选择哪个边,对于分别位于两个连
阅读全文
摘要:题意:已知矩阵S,求序列a。已知矩阵Sij = “ + ” if ai + . . . + aj > 0; Sij = “ − ” if ai + . . . + aj < 0; and Sij = “0” otherwise. 分析: 1、由Sij = ‘+’ 可知,ai + . . . + aj
阅读全文
摘要:题意:给定一个有n个点m条边的有向图,每个边给一个运算符op(AND, OR, XOR)以及一个权值c,问是否能将每个点的值赋成Xi(0或1)后,使得每条边满足Xa op Xb = c。 分析: 1、经典的2-SAT问题。白书324页。 进行强连通分量分解后,若x和¬x在同一个强连通分量中,则无解。
阅读全文
摘要:题意:有N个独立点,其中有P对可用电缆相连的点,要使点1与点N连通,在K条电缆免费的情况下,问剩下的电缆中,长度最大的电缆可能的最小值为多少。 分析: 1、二分临界线(符合的情况的点在右边),找可能的最小值,假设为mid。 2、将大于mid的边变为1,小于等于mid的边变为0(表示这些边由自己承包)
阅读全文
摘要:题意:有N头牛,M个关系,每个关系A B表示编号为A的牛比编号为B的牛强,问若想将N头牛按能力排名,有多少头牛的名次是确定的。 分析: 1、a[u][v]=1表示牛u比牛v强,flod扫一遍,可以将所有牛的大小关系都存入a。 2、对于每一头牛,cntfront表示比它强的牛的个数,cntrear表示
阅读全文
摘要:题意:无限大的奶酪里有n(0<=n<=100)个球形的洞。你的任务是帮助小老鼠A用最短的时间到达小老鼠O所在位置。奶酪里的移动速度为10秒一个单位,但是在洞里可以瞬间移动。洞和洞可以相交。输入n个球的位置和半径,以及A和O的坐标,求最短时间。 分析: 1、因为洞可以相交,所以在计算两点距离时要判断一
阅读全文
摘要:题意:判断利用给出的正方形是否能拼接出无限延伸的结构。 分析:正方形上的字母看做点,正方形看做有向边。 例如: 若上下两个正方形能拼接,需要B+~C+是个有向边。 对输入的处理是:把A+,A-分别映射成2n+1,2n,利用(2n)^1 = 2n+1 , (2n+1)^1 = 2n 的性质处理有向边。
阅读全文