图论
mars_ch
。。
展开
-
poj 1985 Cow Marathon
题目:传送 题意: 给一棵树,求树的直径。思路: 观察:从任何一个点出发的最远点一定是一条直径的端点。 证明: 1.点在一条直径上 2.点不在直径上一定和一条直径交叉 所以,我们把这些边存到邻接表中,任选一个起点,进行2次bfs。就可以啦。 上代码:#include<cstdio>#include<cstring>#include<algorithm>#include<iost原创 2016-04-12 00:08:22 · 238 阅读 · 0 评论 -
poj 2553
戳戳戳题意: 如果一个点 v 能够到达 的所有点 都可以 返回来 到达 v 则称 v 是一个sink点求 所有的 sink点思路: 求出度 为 1 的 强连通分量 的 点 tarjan();然后 没了 看代码#include<cstdio>#include<algorithm>#include<cstring>using namespace std;//by mars_chi原创 2016-08-31 11:07:56 · 313 阅读 · 0 评论 -
sth. about tarjan
感觉进入了 一个 深坑! 脑子不好使 决定 写一写。。主要决定 写一写双联通分量 先介绍: 1.割点: 如果一个点去掉 图就不再联通 则这个点 为 割点 2.点双联通: 没有 割点 的图 3.边双连通:没有 割边 的图那 总结一下 所有 的 tajan吧 1.强连通分量:void tarjan(int x){ low[x]=dfn[x]=++time; in原创 2016-09-01 21:11:34 · 234 阅读 · 0 评论 -
poj 1636 好题》
题意:两个人数一样的监狱,有一些囚犯不能在一起,两个监狱要等数量(#include<cstdio>#include<algorithm>#include<cstring>#include<vector>//by mars_chusing namespace std;int t;int m,r;vector<int> G[505];int vis[505],q[505],p[505]原创 2016-11-03 09:03:13 · 777 阅读 · 0 评论 -
poj 3621 Sightseeing cows
最优比例生成环的题。要取一个回路上点权之和比边权之和的最大值。我们设最后的答案为ansans=∑f[i]∑w[i][j]ans=\frac{\sum f[i]}{\sum w[i][j]}那么-Σf[i]+ans*w[i][j]=0我现在二分的值为k,如果k<=ans的话,这个值是<0的 所以判负环最短路。如果有环的时候那么就可以变大二分的值。即l=mid;注意有重边.zhuW( ̄_ ̄)W#inc原创 2016-10-12 16:05:21 · 310 阅读 · 0 评论 -
bzoj 1123 [POI2008]BLO
DescriptionByteotia城市有n个 towns m条双向roads. 每条 road 连接 两个不同的 towns ,没有重复的road. 所有towns连通。Input输入n<=100000 m<=500000及m条边Output输出n个数,代表如果把第i个点去掉,将有多少对点不能互通。Sample Input5 51 22 31 33 44 5 Sample Output8816原创 2016-11-04 21:13:20 · 315 阅读 · 0 评论 -
bzoj 2662: [BeiJing wc2012]冻结
是按照分层图搜的。Description“我要成为魔法少女!” “那么,以灵魂为代价,你希望得到什么?” “我要将有关魔法和奇迹的一切,封印于卡片之中„„” 在这个愿望被实现以后的世界里,人们享受着魔法卡片(SpellCard,又名符 卡)带来的便捷。 现在,不需要立下契约也可以使用魔法了!你还不来试一试? 比如,我们在魔法百科全书(Encyclopedia of Spe原创 2016-11-06 19:32:44 · 477 阅读 · 0 评论 -
bzoj 4144 [AMPPZ2014]Petrol 最短路+最小生成树+倍增
Description给定一个n个点、m条边的带权无向图,其中有s个点是加油站。 每辆车都有一个油量上限b,即每次行走距离不能超过b,但在加油站可以补满。 q次询问,每次给出x,y,b,表示出发点是x,终点是y,油量上限为b,且保证x点和y点都是加油站,请回答能否从x走到y。 Input第一行包含三个正整数n,s,m(2<=s<=n<=200000,1<=m<=200000),表示点数、加油站原创 2016-11-10 15:05:30 · 462 阅读 · 0 评论 -
sth. about tarjan 第二弹~~考前复习版
唔 RP++Part 1 最基本的强联通分量 bzoj 1654注意 编号+的位置 还有 low[x] 的更新!!!low[x]=min(low[x],low[v]) (!dfn[v])low[x]=min(low[x],dfn[v]) (else)恩恩别的记住统计的条件就好了。#include<cstdio>#include<cstring>#include<algorithm原创 2016-11-16 17:32:41 · 346 阅读 · 0 评论 -
poj 1275 Cashier Employment
好长的一道差分约束啊 啊 啊!戳戳戳题意: 德黑兰的一家每天24小时营业的超市,需要一批出纳员来满足它的需求。超市经理雇佣你来帮他解决一个问题————超市在每天的不同时段需要不同数目的出纳员(例如,午夜只需一小批,而下午则需要很多)来为顾客提供优质服务,他希望雇佣最少数目的纳员。 超市经历已经提供一天里每一小时需要出纳员的最少数量————R(0),R(1),…,R(23原创 2016-08-30 11:08:13 · 492 阅读 · 0 评论 -
poj 2226 Muddy Fields
Day 4 然后今天是马神~~,讲了第三遍【?】的图论,然后是网络流,再然后是输的分治【【这个完全不会写】】啊啊啊然后这是一道 最小覆盖的题。原题: poj 2226 orspoj【但是多组数据题意: 在一块N*M上,有一些格子是泥泞的,现在要用一些宽为1的木板把泥地盖住,并且不能盖住好地。木板可以重叠。问最少需要多少木板?分析: 其实是 完!全!没!有!思路的。No Idea!! 然后原创 2016-05-02 19:54:42 · 267 阅读 · 0 评论 -
poj 1659
嘿嘿嘿,我又回来写题解了。today 传送 1659 今天是一个神奇~的定理。。大概他的名字叫额、、 HAVEL可图定理。 就是给你一组度,让你判断可图否? Havel-Hakimi定理的内容可百度之。 Havel-Hakimi定理很容易理解: 三步走就可以了:。 排序,删边,减1 下面举一个例子: 已经排序: 5433222111. 删除第一个数5: 433222111.原创 2016-04-09 00:47:11 · 318 阅读 · 0 评论 -
poj 3687 拓扑排序
hiahiahia我又回来了!!传送题意: 理解题意很重要嗯 给定几个标签球的重量大小关系,求每个球是第几重的(即每个球在所有球的重量中由小到大排名是多少)。也可以认为是重量嘛,就是第1号位置的球重4一类的。 如果存在多种可行解,就按编号小得重量尽量小输出 ↑↑↑重点 思路: 拓扑。 但是 逆序的!! why? 因为正序的你不能确定,让编号小的重量尽量小。 但是你把编号大的重量原创 2016-04-09 20:44:12 · 502 阅读 · 0 评论 -
poj 3522
很久很久没有写过了。【【这不代表朕什么都没写。传送poj 3522题目大意: 呃呃,就是求一颗生成树,它的边权最大值与最小值差最小。输入:4 5 //点的数量,边的数量 1 2 3 //u,v,w; 1 3 5 1 4 6 2 4 6 3 4 7 4 6 1 2 10 1 3 100 1 4 90 2 3 20 2 4 80 3 4 40 2 1 1 2 1 3原创 2016-04-07 21:41:08 · 689 阅读 · 3 评论 -
poj 3249
题目:传送题意: 给定一个有向无环图,每个结点有权值,从入度为零的点作为起点,出度为零的点作为终点,要求出到终点时可能的最大权值(有可能是负的)思路: 记录各点入读,然后,枚举这些点搜索初的最大值。 最大值用dp。另外,受他软件影响人生第一个vector村邻接表写成了!!纪念Congratulation!!! 数组要开对啊!!另外还有一种拓扑+dp也许回头会写??#include<cstdi原创 2016-04-15 00:18:02 · 302 阅读 · 0 评论 -
poj 1236
poj 1236强连通分量 tarjan。第一题,。。题目: 传送题目大意:有N个学校,从每个学校都能从一个单向网络到另外一个学校,两个问题 1:初始至少需要向多少个学校发放软件,使得网络内所有的学校最终都能得到软件。 2:至少需要添加几条边,使任意向一个学校发放软件后,经过若干次传送,网络内所有的学校最终都能得到软件。解题思路:求所有连通分量,然后缩点,构成一个有向无环的图,有多少个入度为0原创 2016-04-16 20:15:41 · 373 阅读 · 0 评论 -
poj 2186 Tarjan (666的牛)
【【快!题目连读5遍】 啦啦啦啦啦,下午要去保定晃一圈。写了很长时间的一道题。哭叽叽题目: 传送题意: 大意就是,输入n,m n是n头牛,m是m个描述 输入x,y; x牛觉得y牛比较6; 输出 所有牛都觉得很牛的牛的个数【【是不是像绕口令分析: tarjan缩一下; 然后:在缩完的图之中找出度为0的点,>1就直接输出0【不解释】 == 1呢,就是直接找在这个点下的强连通点啦#i原创 2016-04-22 11:55:15 · 369 阅读 · 0 评论 -
2016.7.12 做题汇总! 打卡!
今天写简述版题解。。。 第一道哦! poj 1386什么意思。。自行百度一下吧。是个欧拉路经典题。首先,我们把单词首尾建边。 这样就会出现一个图,而这个图必须联通的。这里我们就可以用并查集看是否联通,也可以用 dfs但是强烈 推荐并查集 因为 dfs不好判 是不是有很多棵树【【其实是因为po主沙茶,wa了一下午】】然后我们就可以总结一下 欧拉路 的特点了 加深一下印象。有向图: 欧拉回路原创 2016-07-13 01:52:28 · 1333 阅读 · 0 评论 -
2016.7.13 刷题打卡
到22:29 才写完一道题: bzoj 1898 主要是 搞了搞矩阵乘法在 信息学中的应用 没错就是 国家集训队论文 另外翻出来 lyd讲的 沼泽鳄鱼,写了些:这是一道 dp题 但是 光看k就知道这个要 优化,怎么优化呢?首先我们考虑 没有 鳄鱼的情况那问题就变成 了 从s到e路径为k 的 路径。 但是现在 我们有一群烦人的 小生物 鳄鱼。 没关系,不虚他! 我们只要建立以下 G原创 2016-07-14 01:01:49 · 308 阅读 · 0 评论 -
bzoj 1202 [HNOI2005]狡猾的商人 两种方法
Description刁姹接到一个任务,为税务部门调查一位商人的账本,看看账本是不是伪造的。账本上记录了n个月以来的收入情况,其中第i 个月的收入额为Ai(i=1,2,3…n-1,n), 。当 Ai大于0时表示这个月盈利Ai 元,当 Ai小于0时表示这个月亏损Ai 元。所谓一段时间内的总收入,就是这段时间内每个月的收入额的总和。 刁姹的任务是秘密进行的,为了调查商人的账本,她只好跑到商人那里打工。她原创 2016-11-14 14:25:45 · 374 阅读 · 0 评论