图论
Liukairui
这个作者很懒,什么都没留下…
展开
-
计蒜客习题:节点的最近公共祖先
问题描述树是一种很常见的数据结构。现在蒜头君面临一个问题,在一个有 n 个节点的树上,节点编号分别是1…n。蒜头想知道一些节点之间的最近公共祖先是那些节点。 输入格式 第一行输入一个整数 n(2≤n≤10,000),表示树上有 n 个节点。 接下来的 n−1 行,每行输入俩个整数 a,b(1≤a,b≤n)代表节点 a,b 之间有一条 a 到 b 边,a 是 b 的父亲。 接下来...原创 2018-03-25 10:34:40 · 961 阅读 · 0 评论 -
计蒜客习题:画图游戏
问题描述蒜头君想让你帮他画一个无向图,图中有 n 个顶点,蒜头告诉你这 n 个顶点的度数。为了简化问题,你只需要告诉蒜头君图的邻接矩阵就可以了,图中不存在自环的情况,也就是说邻接矩阵的正对角线均为 0。(矩阵可能不唯一,只要符合要求即可) 输入格式 第一行输入一个整数 n,代表顶点的个数(1≤n≤15),第二行是 n 个整数,分别代表这 n 个顶点的度数。 输出格式 输出一个 ...原创 2018-02-25 14:37:24 · 646 阅读 · 0 评论 -
计蒜客习题:网络延时
问题描述某计算机网络中存在 n 个路由,每个路由代表一个子网。路由之间有 n−1 条互通关系,使得这 n 个网络之间任意两个网络都可以直接联通,或者通过其他网络间接连通。 为了测试组建的网路的性能,假设相邻的路由之间的数据传输需要一单位时间,现在需要知道任意两个路由之间传输数据最多需要多长时间。 输入格式 第一行一个整数n(2≤n≤50000) 表示网络中路由个数。 接下来 n...原创 2018-02-25 14:33:19 · 410 阅读 · 0 评论 -
计蒜客习题:子树的结点个数
问题描述有一个棵树,树上有 n 个结点。结点的编号分别为 1…n,其中 1 是树的根结点。现在希望你帮忙计算每个结点作为根结点的子树分别有多少结点。 输入格式 第一行输入一个数字 n,代表树上结点的个数。(2≤n≤1000)接下来的 n−1 行,每行俩个数字 a,b,代表结点 a 到结点 b 有一条边。 输出格式 按编号顺序输出每个结点作为根结点的子树,分别有多少结点,中间用空...原创 2018-02-25 09:08:38 · 1180 阅读 · 0 评论 -
计蒜客习题:最短路简化版
问题描述经历一周忙碌的工作后,蒜头君想趁着周末好好游玩一番。蒜头君想去好多好多地方,他想去南锣鼓巷吃各种好吃的,想去颐和园滑冰,还想去怀柔滑雪场滑雪……可是时间有限,蒜头君并不能玩遍所有的地方,最后他决定去几个离他较近的。 我们知道蒜头君一共想去 N 个地方玩耍,编号从 1 到 N,并且知道了蒜头君所在地方的编号 C,以及 M 条路径。现在蒜头君想让你帮他算一算,他到每个地方分别需要...原创 2018-02-25 03:05:15 · 1642 阅读 · 0 评论 -
计蒜客习题:互粉攻略
问题描述蒜头君和他的同事们最近在玩一个好玩的游戏:互粉攻略。一共有 N 个人参加游戏,编号从 0 到 N−1,游戏前每个人都会展示自己最靓丽的一面。当游戏开始时,每个人可以选择去关注别人。当 A 关注了 B,则 A 就成了 B 的粉丝,但是并不意味着 B 同时关注了 A。当所有人都选好后,游戏结束,人气指数最高的人成为冠军。蒜头君制定了奇怪的规定:一个人的人气指数等于他的粉丝数减去关注...原创 2018-02-25 02:05:04 · 1527 阅读 · 0 评论 -
计蒜客习题:修建大桥
问题描述蒜头君来到一个由 n 个小岛组成的世界,岛与岛之间通过修建桥,来让岛上的居民可以去其他的小岛。已知已经修建了 m 座桥,居民们想让蒜头君帮忙计算,最少还要在修建几座桥,居民们才能去所有的岛。 输入格式 第一行输入俩个数字 n,m,分别代表岛的个数,和已经修建的桥的个数,岛的编号分别是 1…n。(1≤n≤1000,0<=m<=n*(n-1)/2)接下来的 m 行,...原创 2018-02-24 23:09:32 · 661 阅读 · 0 评论 -
计蒜客习题:邻接矩阵的使用
问题描述这一节我们来复习下前面刚学的邻接矩阵的使用。给出一个包含有向图和无向图的混合图 G,图上有 n 个点和 m 条边,现在你需要使用邻接矩阵来存储该混合图 G 并按格式输出邻接矩阵。 输入格式 输入第一行为两个正整数 n 和 m(1≤n,m≤100),表示混合图上的 n 个点和 m 条边。接下来输入 m 行,每行输入三个整数 a,x,y(0≤x,y< n),表示点 x 和...原创 2018-02-24 20:15:40 · 1305 阅读 · 0 评论 -
计蒜客习题:邻接表的使用
问题描述这一节我们来复习下前面刚学的邻接表的使用。给出一个包含有向图和无向图的混合图 G,图上有 n 个点和 m 条边,现在你需要使用邻接表来存储该混合图 G 并按格式输出邻接表。 输入格式 输入第一行为两个正整数 n 和 m(1≤n,m≤100),表示混合图上的 n个点和 m 条边。接下来输入 m 行,每行输入三个整数 a,x,y(0≤a≤1,0≤x,yAC代码#in...原创 2018-02-24 19:51:33 · 1073 阅读 · 0 评论 -
计蒜客习题:蒜头君回家
问题描述蒜头君要回家,但是他家的钥匙在他的朋友花椰妹手里,他要先从花椰妹手里取得钥匙才能回到家。花椰妹告诉他:“你家的钥匙被我复制了很多个,分别放在不同的地方。” 蒜头君希望能尽快回到家中,他需要首先取得任意一把钥匙,请你帮他计算出回家所需要的最短路程。 蒜头君生活的城市可以看做是一个n×m 的网格,其中有道路有障碍,钥匙和家所在的地方可以看做是道路,可以通过。蒜头君可以在城市中沿...原创 2018-02-23 22:55:19 · 1073 阅读 · 0 评论 -
计蒜客习题:回收元件
问题描述蒜头君在做一个高级的电学实验,工作面板上放了很多电子元件,这些电子元件可以看成直的导线。 实验结束,蒜头君想要回收这些元件,但是蒜头君不能直接接触他们把他们拿走,这样会导致元件的损坏,并且因为元件上还带有一些正负电荷,所以元件之间也不可以互相接触,否则可能发生短路。蒜头君现在有一个特制的设备,可以沿工作面板的一个边缘把元件一个一个依次吸走,而元件在吸走的过程当中不会发生旋转,...转载 2018-04-04 23:11:11 · 659 阅读 · 0 评论 -
计蒜客习题:单词拼接
问题描述花椰菜君给了蒜头君 n 个单词,如果一个单词的最后一个字母和另一个单词的第一个字母相同,那么两个单词就可以连接在一起组成一个新的单词。现在花椰菜君想要蒜头君计算一下,给定的 n 个单词是否可以全部连接在一起。 输入格式 第一行输入一个整数 nn,代表一共有 n 个单词(1≤n≤100,000)。 接下来输入 n 行,每行输入一个单词。单词均由小写字母组成,每个单词长度不超...原创 2018-04-05 16:33:08 · 1122 阅读 · 3 评论 -
计蒜客习题:蒜头君运送宝藏
问题描述蒜国有 N 座城市,编号依次从 1 到 N,城市之间有 M 条双向的道路。每一条道路对每辆车都有一个最大载重量。蒜头君意外发现了一批宝藏,精心策划了下,他计划用 Q 辆货车分头秘密的运送这批宝藏。他想知道每辆车在不超过道路最大载重量的情况下,最多能运送宝藏的重量(此处忽略货车的重量,只考虑宝藏的重量)。 输入格式 输入第一行输入两个正整数N,M(0AC代码#incl...原创 2018-04-05 17:08:29 · 762 阅读 · 5 评论 -
计蒜客习题:商业信息共享
问题描述有 N 个公司,从每个公司都能单向地向另外一个公司分享最新商业信息,因为他们之间有着某种合作,你需要解决两个问题: 1.现在有一个最新的商业信息,至少需要告诉多少个公司,使得所有的公司最终都能得到该信息。 2.在原有基础上,至少需要再让多少对公司建立这种合作,使任意一个公司获得某个最新商业信息后,经过若干次分享,所有的公司最终都能得到该信息。 输入格式 第一行输入一个整...转载 2018-04-06 15:02:50 · 604 阅读 · 0 评论 -
计蒜客习题:受欢迎的蒜头
问题描述蒜厂除了蒜头君还有很多小蒜头。 每只蒜头的梦想是成为最受欢迎的蒜头。有 N 只蒜头,有 M 对二元关系 (A,B),告诉你蒜头 A 认为蒜头 B 是受欢迎的。如果 A 认为 B 是受欢迎的,B 认为 C 是受欢迎的,则 A 也认为 C 是受欢迎的。你的任务是计算被其余蒜头都认为是受欢迎的蒜头数量。 输入格式 第一行两个正整数 N 和 M,分别表示一共有 N 只小蒜头和 M...转载 2018-04-06 15:06:51 · 735 阅读 · 4 评论 -
计蒜客习题:农场看守
问题描述蒜头君最近做了农场看守,他每天晚上的工作就是巡视农场并且保证没有人破坏农场。从谷仓出发去巡视,并且最终回到谷仓。 蒜头君视力不太好,其他农场守卫只需要对农场的每一条连接不同场地的路走一遍就可以发现是不是有异常情况了。但是他很仔细和耐心,对农场的每一条连接不同场地的路需要走两遍,并且这两遍必须是不同的方向,因为他觉得应该不会两次都忽略农场中的异常情况。 每两块地之间一定至少有...原创 2018-02-25 14:50:10 · 831 阅读 · 0 评论 -
计蒜客习题:蒜厂年会
问题描述蒜厂要开年会了,所有的员工都要参加。 每两个员工之间都有一个亲密度。在同一个项目工作过的员工之间的亲密度为 1。如果 A 和 B、B 和 C 均在同一个项目中工作过,而 A 和 C 没有,那么 A 和 C 之间的亲密度为 1+1=2。 同理,如果 A 和 B 之间的亲密度为 x,B 和 C 之间的亲密度为 y,则 A 和 C 之间的一种 可能亲密度 为 x+y。两个人之间的...原创 2018-02-27 14:09:52 · 661 阅读 · 0 评论 -
计蒜客习题:判定欧拉回路
问题描述你学过一笔画问题么?其实一笔画问题又叫欧拉回路,是指在画的过程中,笔不离开纸,且图中每条边仅画一次,而且可以回到起点的一条回路。蒜头君打算考考你,给你一个图,问是否存在欧拉回路? 输入格式 第 11 行输入两个正整数,分别是节点数 N(1< N<1000) 和边数 M(1< M<100000); 紧接着 M 行对应 M 条边,每行给出一对正整数...原创 2018-03-24 17:57:20 · 679 阅读 · 0 评论 -
计蒜客习题:威虎山上的分配
问题描述每年过年的时候,座山雕都会给兄弟们分银子,分银子之前,座山雕允许大伙儿发表意见,因为要是没法满足所有人的意见,指不定谁要搞出什么大新闻。不过每个人在提意见的时候只能说:“我认为 A 分的银子应该比 B 多!”。座山雕决定要找出一种分配方案,满足所有人的意见,同时使得所有人分得的银子总数最少,并且每个人分得的银子最少为 100 两。 输入格式 第一行两个整数 n,m(0<...原创 2018-03-24 17:53:54 · 443 阅读 · 0 评论 -
计蒜客习题:高速公路
问题描述蒜头君所在的国家有 n 个城市,现在需要在城市之间修高速公路,有 m 条修路的方案,每个方案表示 a, b 城市之间修一条限速为 c 的高速公路。蒜头君希望从这 m 个方案中选出若干方法试行,能够让 n 座城市联通,并且希望所有高速公路中最高限速和最低限速的差值最小。 输入格式 第一行输入两个整数 n,m(2≤n≤100,1<=m<=n(n-1)/2 ),表示有...原创 2018-03-24 17:47:08 · 2281 阅读 · 0 评论 -
计蒜客习题:穿越雷区
问题描述蒜头君最近迷上了一款 RPG 游戏,这次他要去森林里的 n 个宝藏点收集宝藏,编号从 1 到 n。森林里有 m 条道路连接宝藏点,每条道路上都有数量不等的地雷,蒜头君想从中找出若干条道路,使得任意两个宝藏点都是连通的,这样蒜头君都能访问到每个宝藏点了。另外,由于遇到一个地雷,蒜头君会减少一定的血量。 现在蒜头君知道了这 m 条道路上的地雷数,蒜头君希望挑选若干条道路,使得挑选...原创 2018-03-19 15:09:37 · 530 阅读 · 1 评论 -
计蒜客习题:连线问题
问题描述蒜头君和花椰菜君经常出难题考对方。一天,花椰菜君给蒜头君出了这样一道难题:花椰菜君在坐标系上随机画了 N 个点,然后让蒜头君给点之间连线,要求任意两点之间都是连通的,且所连的线段长度之和最小。聪明的你快来帮蒜头君解决一下吧。 输入格式 第一行输入一个整数 N(1≤N≤100),表示花椰菜君一共画了 N 个点。然后输入 N 行,每行输入两个整数 x,y(0≤x,y≤1,000...原创 2018-03-18 14:41:36 · 942 阅读 · 0 评论 -
计蒜客习题:布设光纤
问题描述蒜国有 n 座基站,现在蒜头君想给基站之间布设光纤,使得任意两座基站都是连通的,光纤传输具有传递性,即如果基站 A 和基站 B 之间有光纤,基站 B 和基站 C 之间有光纤,则基站 A 和基站 C 也是连通的,可以通过中间基站 B 来完成传输。 不同的基站之间布设光纤的费用是不同的,现在蒜头君知道了任意两座基站之间布设光纤的费用,求问如何布设,可以使得任意两座基站都是连通的,...原创 2018-03-18 12:19:20 · 878 阅读 · 1 评论 -
计蒜客习题:迷阵突围
问题描述蒜头君陷入了坐标系上的一个迷阵,迷阵上有 n 个点,编号从 1 到 n。蒜头君在编号为 1 的位置,他想到编号为 n 的位置上。蒜头君当然想尽快到达目的地,但是他觉得最短的路径可能有风险,所以他会选择第二短的路径。现在蒜头君知道了 n 个点的坐标,以及哪些点之间是相连的,他想知道第二短的路径长度是多少。 注意,每条路径上不能重复经过同一个点。 输入格式 第一行输入两个整数...转载 2018-03-10 23:15:14 · 2060 阅读 · 0 评论 -
计蒜客习题:成仙之路
问题描述有个蘑菇精想要成仙,但是他必须要收集10000个精灵宝石,不过他要是有花精灵的泪水,就只要8000个精灵宝石就可以了,或者如果他有花精灵的血滴,就只要5000个精灵宝石便可以成仙了。蘑菇精可以和森林里的其他精灵交换东西,但是修为等级差距过大的交换会影响 修炼 蘑菇精就跑到花精灵那里,向他索要泪水或血滴,花精灵要他用精灵宝石来换,或者替他弄来 其他的东西,他可以降低价格。蘑...原创 2018-03-09 18:08:37 · 1000 阅读 · 2 评论 -
计蒜客习题:骑车比赛
问题描述蒜头君准备去参加骑车比赛,比赛在 n 个城市间进行,编号从 1 到 n。选手们都从城市 1 出发,终点在城市 n。 已知城市间有 m 条道路,每条道路连接两个城市,注意道路是双向的。现在蒜头君知道了他经过每条道路需要花费的时间,他想请你帮他计算一下,他这次比赛最少需要花多少时间完成。 输入格式 第一行输入两个整数\n,m(\1≤n≤1,000,1≤m≤5,000),分别代...原创 2018-02-28 19:52:48 · 1276 阅读 · 1 评论 -
计蒜客习题:圣诞树
问题描述圣诞节快到了,蒜头君准备做一棵大圣诞树。 这棵树被表示成一组被编号的结点和一些边的集合,树的结点从 1 到 n 编号,树的根永远是 1。每个结点都有一个自身特有的数值,称为它的权重,各个结点的权重可能不同。对于一棵做完的树来说,每条边都有一个价值 ve,若设这条边 e 连接结点 i 和结点 j,且 i 为 j的父结点(根是最老的祖先),则该边的价值ve=sj*we,sj表示结...原创 2018-02-28 10:36:59 · 1001 阅读 · 0 评论 -
计蒜客习题:闯关游戏
问题描述蒜头君在玩一个很好玩的游戏,这个游戏一共有至多 100 个地图,其中地图 1 是起点,房间 n 是终点。有的地图是补给站,可以加 ki点体力,而有的地图里存在怪物,需要消耗 ki 点体力,地图与地图之间存在一些单向通道链接。 蒜头君从 1 号地图出发,有 100 点初始体力。每进入一个地图的时候,需要扣除或者增加相应的体力值。这个过程持续到走到终点,或者体力值归零就会 Gam...原创 2018-02-27 23:26:35 · 1396 阅读 · 1 评论 -
计蒜客习题:美好的邂逅
问题描述蒜头君走在校园里,邂逅了一个美女,可是蒜头君胆怯了,并没有上前搭讪。回到宿舍的蒜头君越想越难过,好在室友提出了一个很好的办法,可以通过同学的同学的同学这样的关系,当同学的同学这样的关系叠加到足够大的时候,覆盖的人群也就会足够多,这样就能找到这个美女了,而且蒜头君的室友很肯定的说,最多隔 66 个人,就一定能找到这个美女,蒜头君有点不相信了,想验证一下室友的想法,他和室友一起对 ...原创 2018-02-27 20:37:04 · 648 阅读 · 0 评论 -
计蒜客习题:蒜头君的训练室
问题描述蒜头君的训练室有 N 个站点,另外有 M 条单向边连接这些站点。第 i 条路从 Si站到 Ei站,有高度为 Hi的围栏,蒜头君是需要跳跃的。 现在蒜头君们有 T 个任务要完成。第 ii 个任务,蒜头君要从 Ai站到 Bi站,蒜头君想要他们路径中最高围栏尽可能小。请你确定这个高度。 输入格式 第一行输入三个整数 N, M, T。(1≤N≤300,1≤M≤25000,1≤T≤...原创 2018-02-27 23:00:25 · 1196 阅读 · 1 评论 -
计蒜客习题:蒜头君的银行卡
原文链接:传送门 原文作者:YJMSTR问题描述虽然蒜头君并没有多少钱,但是蒜头君办了很多张银行卡,共有 n 张,以至于他自己都忘记了每张银行卡里有多少钱了。 他只记得一些含糊的信息,这些信息主要以下列三种形式描述: 银行卡 a 比银行卡 b 至少多 c 元。 银行卡 a 比银行卡 b 至多多 c 元。 银行卡 a 和银行卡 c 里的存款一样多。 但是由于蒜头君的记...转载 2018-02-27 15:32:16 · 873 阅读 · 4 评论 -
洛谷P1137-旅行计划
在洛谷上搜NOIP2014的运输计划,结果点成了这道题,做完才发现不对…问题描述小明要去一个国家旅游。这个国家有# N 个城市,编号为 1 至 N ,并且有 M 条道路连接着,小明准备从其中一个城市出发,并只往东走到城市i停止。 所以他就需要选择最先到达的城市,并制定一条路线以城市i为终点,使得线路上除了第一个城市,每个城市都在路线前一个城市东面,并且满足这个前提下还希望游览的城市尽...原创 2018-07-24 02:36:22 · 366 阅读 · 0 评论