
Tarjan
文章平均质量分 78
kk303
这个作者很懒,什么都没留下…
展开
-
POJ 2553-题意很重要...
看是题目看错了...以为和上一个找大牛的一样...样例正好也符合..结果WA了N次...中间也有犯的一些小错误...总是不细心... 题意是说求这些点:自己能到达的点一定能到达自己...抽象来看..就是求出各个强连通分量...这些强连通分量中没有出度的..里面所有点是解.原创 2011-10-13 21:40:21 · 1322 阅读 · 0 评论 -
POJ 3683 - Priest John's Busiest Day 构图2-sat..感觉求方案不太正确..要改进..
题意: 在一个乡村有一个牧师John...有天很多人要举行婚礼..需要John来进行祷告..祷告必须要在婚礼开始时到开始后D时间段..或者到婚礼结束的最后D时间段..现在给出每个婚礼开始和结束的时间..以及每场婚礼需要祷告的时间长度...问所有婚礼是否能顺利进行..如果可以..输出任意一种牧师John祷告的时间方案...原创 2013-08-14 13:52:12 · 701 阅读 · 0 评论 -
HDOJ 3715 - Go Deeper 二分+2-sat判断
题意: 有这么一个过程: go(int dep, int n, int m) begin output the value of dep.原创 2013-08-14 15:19:12 · 935 阅读 · 0 评论 -
POJ 2749 - Building roads 构图2-sat..注意!POJ爆WA也有可能是数组越界!
题意: 有N个牛棚...相互中间没有路..现在准备在两处建立中转站..每个牛棚向其中一个中转站建立路径...有些牛是相互敌对的..不能连在同一个中转站上..有些牛是相互友好的..是必须要在同一个中转站的...请找出一种建路方案..使得牛棚间的距离最大的最短...注意..牛棚只能通过中转站走..两个中转站间有路径...路径长度为各点的哈夫曼距离..原创 2013-08-14 17:54:11 · 1000 阅读 · 4 评论 -
Uva 1146 - Now or later 二分+构图2-sat判断
题意: 有个飞机场..要安排飞机降落并且休息..每个飞机可能在其两个时刻到达...让一个飞机到达并且休息的时候..其他的飞机不能降落..问要保证所有飞机都能正常降落的最长休息时间是什么... 题解: 裸构图2-sat....因为一个分号的原因WA了好久...囧.....还有就是原创 2013-08-15 10:41:49 · 1040 阅读 · 0 评论 -
Uva1 1391/LA 3713 - Astronauts 构图2-sat...更正了toposort过程...
Program:#include#include#include#include#include#include#include#include#include#define oo 1000000007#define MAXN 100005<<1#define MAXM 100000<<2#define ll long longusing namespace std;原创 2013-08-15 17:25:09 · 1015 阅读 · 0 评论 -
HDOJ 4115 - Eliminate the Conflict 构图2-sat...思维不能乱~!!
题意: Bob和Alice划拳比赛~~Alice掌握了Bob的出招规律~知道Bob每轮出什么..而Bob则规定了Alice某些对轮出的必须相同或者必须不同...Alice如果要获胜..必须所有的局不败...问Alice有无获胜的策略... 题解: 这题乍一看和2-sat无关系.....原创 2013-08-15 20:35:27 · 783 阅读 · 0 评论 -
HDOJ 1816 - Get Luffy Out * 构图2-sat...
题意: 和POJ2723差不多....唯一的区别在于前一题是把2N个要使分成了N对..而本题是组成了N对..说明可能有些钥匙出现在多个pair中... 题解: 上一题是以每一pair取哪一个来构图的...而原创 2013-08-16 01:14:27 · 656 阅读 · 0 评论 -
POJ 2296 - Map Labeler 构图2-sat..注意细节...
题意: 有一个地图...地图上有N个city...每个city是都是一个边长相同的平行于x/y轴的正方形..现在给了每个city的一个点.这个点可能是正方形上边的中点,也可能是下边的中点..每个city的区域不能有交集(边可以重合)..问正方形的边最长可以是多少.. 题解:原创 2013-08-16 10:39:38 · 785 阅读 · 0 评论 -
HDOJ 4738 - Caocao's Bridges 用tarjan找无向图的桥..注意trick
题意: 赤壁之战,曹操把所有的船都用桥连起来了...如果船都是联通的..泽曹操是必胜的..而现在周瑜可以用一个炸弹炸掉一个桥..若能让曹操的所有船不联通..则可以逆转局势获得胜利..但是要炸某个桥..就必须派出一些士兵去执行..现在告诉有哪些桥.在哪两点间.并且炸掉这个桥所需要的士兵数量..问周瑜能否逆转局势,并且所需要的兵力最少是多少..原创 2013-09-15 22:46:37 · 1815 阅读 · 0 评论 -
HDOJ 1827 - Summer Holiday 简单的tarjan求强联通分量+缩点
题意: 听说lcy帮大家预定了新马泰7日游,Wiskey真是高兴的夜不能寐啊,他想着得快点把这消息告诉大家,虽然他手上有所有人的联系方式,但是一个一个联系过去实在太耗时间和电话费了。他知道其他人也有一些别人的联系方式,这样他可以通知其他人,再让其他人帮忙通知一下别人。你能帮Wiskey计算出至少要通知多少人,至少得花多少电话费就能让所有人都被通知到原创 2013-10-16 19:24:36 · 1333 阅读 · 0 评论 -
POJ 1515 - Street Directions 用tarjan求无向图的桥
题意: 给了一个无向图...问最多能让多少条边变成单向边(方向自定)...使得整个图为强连通图(若有边无法定向为单向..那么输出两个单向边表示这个边只能是双向)..输入任意一种方案... 题解: 很简单了....已知对于一个双联通分两中..所有的无向边定向这一个双联通分量就可以变为强连通分量.原创 2013-10-24 21:39:56 · 1101 阅读 · 0 评论 -
Uva 10765 - Doves and bombs 求割点..找去掉某点一个连通图会变成几个部分..
题意: 给了一个联通无向图...现在问去掉某个点..会让图变成几个联通块?...输出的..按分出的从多到小..若相等..输出标号从小到大.输出M个... 题解: 从求割点的过程演变得出一个点去掉会将图变成几个联通块.. 也就是在做tarjan时...原创 2013-10-28 15:51:07 · 1427 阅读 · 0 评论 -
ZOJ 3717 - Balloon 简单二分+2-sat..精度恶心..
题意: 在一个三维空间中..可以放气球..每次给两个气球..必须并且仅可放一个气球..现在要求所放气球都没有冲突..请求出最长的半径是多少.. 题解: 一看就是2-sat+二分了..和HDU 3622一回事...WA了好多发..原因是输出的精度..吐..Program:#includ原创 2013-11-12 12:37:01 · 1122 阅读 · 0 评论 -
hiho一下 第十五周 最近公共祖先·二 - 更新一下tarjan离线LCA模板
题意: 裸LCA 题解: tarjan离线解LV原创 2014-10-14 12:41:21 · 1072 阅读 · 0 评论 -
POJ 3905 - Perfect Election 简单2-sat
题意: 对N个人问2个问题. 每个人选择的问题与其快乐否有如下的关系 Accepted answers to the poll questionEncodingI would be happy if at least one from i and j is elected.+i +j原创 2013-08-14 11:19:41 · 727 阅读 · 0 评论 -
ZOJ 3656 - Bit Magic 拆分成多个2-sat来判断...
题意: 定义一个运算...用a[N]通过一些关系算出b[N[N]...现在给出b[N][N]问是否存在构造它的a[N]... 题解: 被这题坑爆了....首先是爆空间...要拆成31个2-sat分别判断才行..在一个是ZOJ的数据..b[i][i]可能不为0...要原创 2013-08-13 18:42:00 · 752 阅读 · 0 评论 -
HDOJ 3861 - The King’s Problem tarjan求强联通分量&缩点&有向图最小路径覆盖(匈牙利)
题意: 给了一个图无向联通图..国王还要划分州..若在划分州前两点v,u有路径(v,u)、(u,v)那么他们必须要在同一个州中...并且建立了州以后...一个区域内的任意两点至少要有单向路径..问最少建立多少个州可以满足要求... 题解: 首先用tarjan求原创 2013-08-20 20:12:00 · 990 阅读 · 0 评论 -
POJ 1236 Tarjan缩点及思维..
题意是有N个学校...每个学校可能向几个学校进行数据传输(单向的)...问..至少需要把一个文件给几个学校可以使给的N个学校都收到文件...再问在加几个通信线路可以使各个学校之间都能直接或间接的传递文件... 一个强连通分量里的点肯定能互相传输...所以先用Tarjan缩原创 2011-10-18 12:48:10 · 3085 阅读 · 0 评论 -
POJ 3013 - SPFA..为毛通过率这么低...
题意抽象来说..就是给一个无向图...要我们以结点1为根做一棵树...使得代价最小...代价的定义是说每条边乘以这条边下面的子树所有点之和... 令pointi指为i点的权值...Li为线段的权值 也就是说最后要求的是L1*(point2+point3+point原创 2011-10-18 16:41:16 · 1334 阅读 · 0 评论 -
USACO Section 5.3 Network of Schools - 回顾Tarjan求强连通分量
这道题一看我就感觉做过..但不记得是怎么做的了...第一感是并查集...找出一类一类有公共祖先的点...公共祖先个数则为第一问的解...第二问就是要始各个公共祖先能形成一个圈..并且每个树的叶子要能到达祖先...就写了一个Floyd+DFS的东东...结果过了前面4个数据...WA了...仔细一想...不对啊..这道题用并查集是错误的... 再一研究...发现这道题其实就是个求强连通分原创 2012-02-02 02:06:07 · 1104 阅读 · 0 评论 -
CodeForces 160D - Edges in MST kruskal+tarjan求无向图的桥
题意: 给一个无向图..判断这个图中的每个边...any 为其是该图所有最小生成树共有的边...at least one..该边至少为一个最小生成树的边..none..该边不存在该图的任何的最小生成树中.. 题解: 首先思考如何判断一个边是某个最小生成树的边...回顾kruskal算法..将所有的边按其长度从小到大排好序..从原创 2013-08-03 08:56:10 · 1303 阅读 · 0 评论 -
HDOJ 3062 Party - 2-sat入门
参看《由对称性解2-SAT问题》学习....2-sat用于解决一类问题..每组两个元素..每组选且仅一个..某些元素不能共存..通常是问能否选择成功..若成功输出选择方案... 本题很裸...而且只是要求能否成功...判断一个2-sat是否成功..就是连了边用Tarjan求强联通分量...若同组的两个在一个强联通分量中...则说明不可成功....因为一个强联通分量的意思是这个内部的点选择原创 2013-08-03 12:38:42 · 862 阅读 · 0 评论 -
POJ - 3352 无向图的割和桥以及双连通分量
双连通分量是指图中每两个点都有两条完全不同的路径可到达..也就是去掉这个图的任意一个边一个点...两两之间依然可达.. 图论中的桥...在有向图中是两个连通分量之间唯一的边(如果有多条那么都不是桥)...在无向图中是两个双连通分量之间的唯一边... 而割指原创 2011-10-17 13:48:31 · 5512 阅读 · 0 评论 -
HDOJ 1824 - Let's go home 简单构图2-set
一个队看作一个组.. 队长看成一个点..两个队员一起看作一个点...构造典型的2-sat模型...用tarjan判断可行性... 在tarjan里弹栈过程中忘记把instack置为false了...WA了好久..细心... Program:#include#include#include#include#include#include#include#原创 2013-08-03 14:11:26 · 720 阅读 · 0 评论 -
POJ 3207 - Ikki's Story IV - Panda's Trick 构图2-sat
题意: 有0~n-1个点按顺序围成一圈..现在在某些两点间加边..这条边要么在圆内..要么在圆外..问能否保证这些线段都不相交 题解: 每个线段有两种状态..里面or外面..又有些线段的某些状态是不能共存的..抽象出2-sat模型..每条线段作为一个组..线段的两种状态作为这个组的两个点..以线段相交的情况来做点之间的有向边.原创 2013-08-03 18:21:11 · 674 阅读 · 0 评论 -
CodeForces 27D - Ring Road 2 构图2-sat..并输出选择方案
题意 n个数1~n按顺序围成一个圈...现在在某些两点间加边..边可以加在圈内或者圈外..问是否会发生冲突?如果不发生冲突..输每一条边是放圈内还是圈外. 题解 这道题和POJ 3207差不多了..只是那道题只要判断是否存在不要输出方案...发现个很严重的问题..POJ 3207的数据实在是太弱了..我上一个程序原创 2013-08-03 18:24:07 · 1452 阅读 · 0 评论 -
POJ 3678 - Katu Puzzle 比较典型的构图2-sat...求是否有可行解
题意: 有N个Xi...又告诉M个位运算( AND OR XOR )结果..问是否有存在可行解 题解 每个Xi就两种情况..并且必须选择一个..符合2-sat的模型..那剩下就是根据运算时构造边了...这里要进一步理解2-sat中一条有向边的涵义是选了起点就必须选终点..那剩下的就好办了一个一个分析... x,y代表原创 2013-08-03 19:59:16 · 2028 阅读 · 0 评论 -
POJ - 2186 Tarjan的模板题..
暑假的时候研究过kosaraju~~A过一些强连通分量..Kosaraju需要做两个图, 一个原图一个是原图的反图(每个边的终点起点反过来..)..正着DFS一次...标记出栈顺序..再根据这个出栈顺序对反图进行一次DFS..每次能遍历到的点就是在一起的强连通分量...原创 2011-10-13 16:55:21 · 1395 阅读 · 0 评论 -
HDOJ 3622 - Bomb Game 2-sat+二分....细心...
题意: 有N个炸弹..每个炸弹有两个位置可以选择..把炸弹放到其中一个地方去...炸弹的爆炸范围是其为圆心的圆...两个炸弹不能有攻击范围上的重合..问要满足条件..炸弹爆炸范围的半径最长能是多少... 题解: 每个炸弹看成一类..其在两个中比选一个..符合2-sat的构图条件....那么就二分枚举炸弹的爆炸范原创 2013-08-05 17:29:47 · 856 阅读 · 0 评论 -
HDOJ 4612 - Warm up tarjan求无向图双联通分量+树形DP+stack申请更多空间
题意: 给一个连通无向图..两点间可能有多条边...问加一条边后..桥最少能有多少个... 题解: 之前没写过tarjan求双联通分量的...练习赛的时候思路有点乱.再加上不断的爆栈..就搞不定了...首先求双联通分量并缩点..如果题目能保证没有重边..每个点的low值就代表在哪个双连通分量里....但题目就是要绕一下.原创 2013-08-06 09:16:26 · 935 阅读 · 0 评论 -
CodeForces 178B1 - Greedy Merchants tarjan求双联通分量+tarjan离线求最近公共祖先
题意: 有一个联通无向图...有K个商人要在K对点间运货...问这K个商人各自经过了多少个桥... 题解: 此题用到了两个tarjan..第一个tarjan是用来求双联通分量缩点的..第二个tarjan是用来离线求一堆点对的最近公用祖先... 既然是要原创 2013-08-06 15:48:49 · 1040 阅读 · 0 评论 -
HDOJ 4635 - Strongly connected/2013多校联合第四场D Tarjan求强联通图.缩点.
题意: 给一个有向的简单图(无重复边,无自环)...问该图是否是强连通图..若不是强联通问最多可以加多少条边..使得图依然不是强联通图并且还是简单图... 题解: 首先用tarjan求强联通..判断整个图是否是一个强联通图....如果不是强联通..又要加尽可能多的边保持不强联通..有个方向是选出一块点集原创 2013-08-07 10:48:44 · 859 阅读 · 0 评论 -
水水微软苏州校招笔试 1月17日 题解..
A.Koch Snowflake 找规律...观察K2,K3可以得出在每个Ki中mod 4为2,3的将是当前最新出来的颜色,所以只需要不断的往前迭代直到当前标号迭代后所对应标号是某个Ki中mod 4为2,3的...#include#include#include#include#include#include#include#include#includ原创 2015-01-19 08:43:51 · 2245 阅读 · 3 评论