上一页 1 ··· 25 26 27 28 29 30 31 32 33 ··· 37 下一页
摘要: Description Japan plans to welcome the ACM ICPC World Finals and a lot of roads must be built for the venue. Japan is tall island with N cities on the 阅读全文
posted @ 2019-07-29 23:34 _Ackerman 阅读(238) 评论(0) 推荐(0) 编辑
摘要: 首先,先让我们了解下逆序对的概念: 如果存在正整数 i, j 使得 1 ≤ i < j ≤ n 而且 A[i] > A[j],则 <A[i], A[j]> 这个有序对称为 A 的一个逆序对,也称作逆序数。 现在直接拿POJ-2299作为例题来说下这个逆序对吧 具体的代码实现: 阅读全文
posted @ 2019-07-29 23:29 _Ackerman 阅读(439) 评论(0) 推荐(0) 编辑
摘要: 树状数组基础 树状数组是一个查询和修改复杂度都为log(n)的数据结构。主要用于数组的单点修改&&区间求和. 另外一个拥有类似功能的是线段树. 具体区别和联系如下: 1.两者在复杂度上同级, 但是树状数组的常数明显优于线段树, 其编程复杂度也远小于线段树. 2.树状数组的作用被线段树完全涵盖, 凡是 阅读全文
posted @ 2019-07-29 16:15 _Ackerman 阅读(307) 评论(0) 推荐(0) 编辑
摘要: Increasing Subsequence (hard version) Increasing Subsequence (hard version) The only difference between problems C1 and C2 is that all values in input 阅读全文
posted @ 2019-07-29 00:17 _Ackerman 阅读(253) 评论(0) 推荐(0) 编辑
摘要: B. Odd Sum Segments time limit per test 3 seconds memory limit per test 256 megabytes input standard input output standard output You are given an arr 阅读全文
posted @ 2019-07-27 00:21 _Ackerman 阅读(327) 评论(0) 推荐(0) 编辑
摘要: 1|0浅谈线段树 线段树个人理解和运用时,认为这个是一个比较实用的优化算法。这个东西和区间树有点相似,是一棵二叉搜索树,也就是查找节点和节点所带值的一种算法。使用线段树可以快速的查找某一个节点在若干条线段中出现的次数,时间复杂度为O(logN),这个时间复杂度非常的理想,但是空间复杂度在应用时是开4 阅读全文
posted @ 2019-07-26 16:04 _Ackerman 阅读(312) 评论(0) 推荐(0) 编辑
摘要: 迪杰斯特拉(Dijkstra)算法是最短路径算法,用于计算一个节点到其他节点的最短路径。它的主要特点是以起始点为中心一层一层的向外走(广度优先搜索),直到找到终点 先看具体的例子来体会下它的算法思想: dist[]:起点到未被并入的顶点的最短距离【类比】Prim算法中的lowCost[]:当前生成树 阅读全文
posted @ 2019-07-24 17:33 _Ackerman 阅读(4285) 评论(1) 推荐(0) 编辑
摘要: 暑假,小哼准备去一些城市旅游。有些城市之间有公路,有些城市之间则没有,如下图。为了节省经费以及方便计划旅程,小哼希望在出发之前知道任意两个城市之前的最短路程。 上图中有4个城市8条公路,公路上的数字表示这条公路的长短。请注意这些公路是单向的。我们现在需要求任意两个城市之间的最短路程,也就是求任意两个 阅读全文
posted @ 2019-07-24 11:54 _Ackerman 阅读(413) 评论(0) 推荐(0) 编辑
摘要: 1.关于set C++ STL 之所以得到广泛的赞誉,也被很多人使用,不只是提供了像vector, string, list等方便的容器,更重要的是STL封装了许多复杂的数据结构算法和大量常用数据结构操作。vector封装数组,list封装了链表,map和set封装了二叉树等,在封装这些数据结构的时 阅读全文
posted @ 2019-07-24 10:27 _Ackerman 阅读(453) 评论(0) 推荐(0) 编辑
摘要: E. Subsequences (easy version) 本题和H题唯一的不同点是数据范围。 你有一个长度为nn的字符串。你可以选择它的任意一个子序列。子序列定义为可以将这个字符串删去若干个字符得到。特别的,空串也是一个子序列。 对于一个长度为mm的子序列,选出它的花费是n-mn−m,也就是你需 阅读全文
posted @ 2019-07-24 09:58 _Ackerman 阅读(210) 评论(0) 推荐(0) 编辑
上一页 1 ··· 25 26 27 28 29 30 31 32 33 ··· 37 下一页