摘要: 题目: 农夫约翰想修复牧场周围的一小部分篱笆。 他测量围栏,发现他需要N(1≤N≤20,000)块木板,每块木板具有一定的整数长度Li(1≤Li≤50,000)个单位。 然后,他购买了一块足够长的单块长板,足以切入N块木板(即,其长度为Li的长度之和)。 FJ忽略了“锯缝”,即锯切时因锯末而损失的额 阅读全文
posted @ 2021-01-31 21:33 索饮 阅读(148) 评论(0) 推荐(0) 编辑
摘要: 题意:R条道路,N个路口,道路可以双向通过,问1路口到N路口的次短距离。同一条路可以走多次。 思路:Dijkstra算法。用一个二维数组dis[MAXN][2],去记录i->j的最短路径和次短路径, dis[i][0]是表示当期拿记录最短边,dis[i][1]是表示当前记录次短边。使用book[ma 阅读全文
posted @ 2021-01-31 20:09 索饮 阅读(68) 评论(0) 推荐(0) 编辑
摘要: 大致题意:给定一串数字,求冒泡排序需要交换的次数。 分析:一个乱序序列的逆序数=只允许相邻两个元素交换的条件下,得到有序序列的交换次数。 归并排序思想:分治 当我们想把一个数组排序的时候,先把这个数组一分为二,然后左部分一分为二,右部分一分为二... 直到细分到每个部分只有一个元素为止。对他们进行简 阅读全文
posted @ 2021-01-31 19:01 索饮 阅读(58) 评论(0) 推荐(0) 编辑
摘要: 题意 有n个人,有m个,三种操作 ①.合并p所在的集合和q所在的集合 ②.将p加入q所在的集合 ③.询问p所在的集合中的元素个数以及元素之和 一和三都是普通的并查集操作,主要是二,把一个单独的节点p加入q所在的集合,不太好想。 由于并查集是一个树状结构,内部关系复杂,所以如果将其中的一个点直接拆出来 阅读全文
posted @ 2021-01-31 11:04 索饮 阅读(98) 评论(0) 推荐(0) 编辑