摘要: - 题目大意 给你一个有向图,问你定义一个环的平均值为这个环上所有边的平均值,问你最小的环的平均值是多少。 - 解题思路 先利用spfa来判断负环,然后用二分去判断若当前的二分值是mid,让所有的边都减去这个值,如果此时图中出现负环,则说明有环的平均值比这个更小。 - 代码 阅读全文
posted @ 2018-02-15 20:00 Alpacaddhh 阅读(121) 评论(0) 推荐(0) 编辑
摘要: - 题目大意 一个人,他只会沿着如下条件的道路(A,B)走:存在一条从B出发回家的路径,比所有从A出发回家的路径都要短。我们的任务是要找出一共有有多少条不同的回家路径。 - 解题思路 先用dijkstra预处理出终点到每个点的最短路,然后将满足行走条件的A、B(除行走条件外,还要满足一个前提,即A、 阅读全文
posted @ 2018-02-15 17:49 Alpacaddhh 阅读(137) 评论(0) 推荐(0) 编辑
摘要: - 题目大意 如题所示获得一个物品有两种方式: 1. 直接购买该物品,第i件物品花费的钱为ci 2. 用两件其他物品合成所需的物品,一共有m种合成方式。 问获得1号物品的最少花费。 - 解题思路 把每种合成方式当成路径(注意是有向图把每种方式弄成两条边)枚举物品,以第i个物品为起点做spfa,做n次 阅读全文
posted @ 2018-02-15 17:33 Alpacaddhh 阅读(197) 评论(0) 推荐(0) 编辑
摘要: - 题目大意 个人要穿越到未来,但是之后还要回去,并且回去的时间要在他穿越之前。 - 解题思路 我们可以把在虫洞中的时间看做是负边权,然后利用bellman-ford算法来判断有没有负环即可。 - 代码 阅读全文
posted @ 2018-02-15 15:30 Alpacaddhh 阅读(192) 评论(0) 推荐(0) 编辑
摘要: - 题目大意 给你一个图,求一条起点(入度为0)到终点(出度为0)的路。满足全部点的val之和最大。 - 解题思路 先用数组记录入度为0和出度为0的点,然后利用记忆化搜索来解决。 - 代码 阅读全文
posted @ 2018-02-15 15:21 Alpacaddhh 阅读(102) 评论(0) 推荐(0) 编辑
摘要: - 题目大意 就如题目所说给你n个点,m条无向边,每条边都有长度d和花费p,给你起点s终点t,要求输出起点到终点的最短距离及其花费,如果最短距离有多条路线,则输出花费最少的。 - 解题思路 简单的最短路径问题,直接用dijkstra,注意重边的情况就行了。 - 代码 阅读全文
posted @ 2018-02-15 15:19 Alpacaddhh 阅读(213) 评论(0) 推荐(0) 编辑
摘要: - 题目大意 有N个物品,每个物品都有自己的价格,但同时某些物品也可以由其他的(可能不止一个)替代品,这些替代品的价格比较“优惠”,问怎么样选取可以让你的花费最少来购买到物品1。 - 解题思路 我们就可以把N个物品看作是N个点,从其他点到他的关系视做边,又因为最后总是要找到物品1,所以可以看作是从起 阅读全文
posted @ 2018-02-15 15:15 Alpacaddhh 阅读(138) 评论(0) 推荐(0) 编辑
摘要: - 题目大意 中文题,就是寻找最短的从商店到赛场的路线(题目中题意很清楚)。 - 解题思路 最短路径的入门题,用dijkstral方法即可。 - 代码 阅读全文
posted @ 2018-02-15 15:07 Alpacaddhh 阅读(118) 评论(0) 推荐(0) 编辑
摘要: - 题目大意 有一个V个结点M条边的带边权无向平面图,有一个人在一个区域,要拆一些墙使得他可以到达任意一个区域,问最小花费。 - 解题思路 先开始想不通,看了别人突然恍然大悟,根据欧拉公式我们可以知道对于一个有k个连通分量的平面图的区域数r=E−V+k+1。那么那么对偶图生成树的边数为r−1=E−V 阅读全文
posted @ 2018-02-15 13:50 Alpacaddhh 阅读(106) 评论(0) 推荐(0) 编辑
摘要: - 题目大意 给你一个r * c的格子,每个格子有一个 ‘ \ ’ 或者 ‘/’ 的墙,以及打掉墙的费用,问使得所有块联通的最小费用。(自己可以配合图来看好理解一点) - 解题思路 我们可以将其转化成联通块的问题,就是把每个格子看成两部分,左侧和右侧。以一行来看,假设两个格子A,B。那么B格子的右侧 阅读全文
posted @ 2018-02-15 13:45 Alpacaddhh 阅读(113) 评论(0) 推荐(0) 编辑
摘要: - 题目大意 给出N个点,M条边,求出一棵包含N个点的树,且树的最大权值-最小权值达到最小。 - 解题思路 我们可以先把边排序,枚举最小的,然后利用kruskal加边,当图第一次连通的时候当前的边就是尽可能小的最大边,更新答案即可。 - 代码 阅读全文
posted @ 2018-02-15 13:38 Alpacaddhh 阅读(132) 评论(0) 推荐(0) 编辑
摘要: - 题目大意 初始有N个集合,分别为 1 ,2 ,3 .....n。一共有三种操件:1、 p q 合并元素p和q的集合2 、p q 把p元素移到q集合中3 、p 输出p元素集合的个数及全部元素的和。 - 解题思路 并查集操作。1、3步比较容易实现,只要建立一个sum[],cnt[],记录每个结点相应 阅读全文
posted @ 2018-02-15 13:36 Alpacaddhh 阅读(100) 评论(0) 推荐(0) 编辑
摘要: - 题目大意 有一系列的事件,它每Period秒钟就会产生编号为qNum的事件,你的任务是模拟出前k个事件,如果多个事件同时发生,先处理qNum小的事件 - 解题思路 很多相同的数值在同一时刻内,数值小的先输出,那么就是求若干个中最小的,那么就可以用优先队列进行维护。 - 代码 阅读全文
posted @ 2018-02-15 13:28 Alpacaddhh 阅读(113) 评论(0) 推荐(0) 编辑
摘要: - 题目大意 某地发洪水,导致某些城市被淹而消失,现在想把剩下的零散的城市通过修路连接起来,已知现在有部分城市是连通的。可选择修的路有m条,城市总共有n个,给出了m条路的起点终点和修路花费,问最少可花多少钱能保证所有的城市连通。 - 解题思路 可以用kruskal。把边权排序然后并查集添加边即可。 阅读全文
posted @ 2018-02-15 13:26 Alpacaddhh 阅读(84) 评论(0) 推荐(0) 编辑
摘要: - 题目大意 省政府“畅通工程”的目标是使全省任何两个村庄间都可以实现公路交通(但不一定有直接的公路相连,只要能间接通过公路可达即可)。经过调查评估,得到的统计表中列出了有可能建设公路的若干条道路的成本。因此求出最少的成本为多少? - 解题思路 最小生成树的问题,用kruskal算法,kruskal 阅读全文
posted @ 2018-02-15 13:22 Alpacaddhh 阅读(114) 评论(0) 推荐(0) 编辑
摘要: - 题目大意 某省调查城镇交通状况,得到现有城镇道路统计表,表中列出了每条道路直接连通的城镇。省政府“畅通工程”的目标是使全省任何两个城镇间都可以实现交通(但不一定有直接的道路相连,只要互相间接通过道路可达即可)。问最少还需要建设多少条道路? - 解题思路 运用并查集的知识可以很容易做出。初始化时每 阅读全文
posted @ 2018-02-15 13:17 Alpacaddhh 阅读(95) 评论(0) 推荐(0) 编辑
摘要: - 题目大意 有若干个由两种元素组成的简单化合物,现在把它们装进车里,如果车上有恰好有k种简单化合物并且恰好有k种元素的话,那么就会引发爆炸,所以车上的化合物必须避免满足这个条件。 - 解题思路 如果元素表示点,那么化合物就表示边,要爆炸的条件就是形成环,即为k个点k条边,那么就肯定存在环。直接用并 阅读全文
posted @ 2018-02-15 13:10 Alpacaddhh 阅读(104) 评论(0) 推荐(0) 编辑
摘要: - 题目大意 有n个精灵在一维坐标轴上,并且每个精灵都有一个权值,每个精灵从一个点到达一个点要花费:S3*W(s代表距离),问所有的精灵要聚在一起,最小花费是多少。 - 解题思路 设最终要求的点的位置是x,则花费为:∑fabs(x[i]-x)^3*w[i]。又因为次函数为凸函数(求二次导就知道了), 阅读全文
posted @ 2018-02-15 13:05 Alpacaddhh 阅读(109) 评论(0) 推荐(0) 编辑
摘要: - 题目大意 农夫约翰搭了一间有n间牛舍的小屋。牛舍排在一条线上第i号牛舍在xi的位置。但是他的m头牛对小屋很不满意,因此经常互相攻击。约翰为了防止牛之间互相伤害,因此决定把每头牛都放在离其他牛尽可能远的牛舍。 - 解题思路 很明显是一个最大值最小化的问题,因此我们可以假设C(d)为满足所有牛之间的 阅读全文
posted @ 2018-02-15 13:02 Alpacaddhh 阅读(156) 评论(0) 推荐(0) 编辑
摘要: - 题目大意 给你n个牛的自身价值,让你找出连续的且数量大于等于F的一段区间,使这段区间内的牛的平均价值最大。 - 解题思路 这道题可以用二分法也可以结合前缀数组来求和来做,我就是用前缀数组求和和二分答案法来做的。 - 代码 阅读全文
posted @ 2018-02-15 12:59 Alpacaddhh 阅读(120) 评论(0) 推荐(0) 编辑