摘要: Heavy Transportation 题目大意: Hugo Heavy要从城市1到城市N运送货物,有M条道路,每条道路都有它的最大载重量,问从城市1到城市N运送最多的重量是多少。 思路: 这个题,根据题目要求,我们发现这个题和最小生成树正好相反,所以我们使用Kruskal求解最大生成树。 但这个 阅读全文
posted @ 2017-05-09 08:34 江屿 阅读(206) 评论(0) 推荐(0) 编辑
摘要: 糟糕的一天 洛谷链接 挺水的一道题,也就是看每个数后面有多少数比它小,最后把总数加起来。 我们可以用单调栈来实现,并用一个数组来保存每个数现在的状态。 代码: 1 #include<cstdio> 2 long long n,a[80010],stack[80010],top,ans=0; 3 in 阅读全文
posted @ 2017-05-08 20:09 江屿 阅读(150) 评论(0) 推荐(0) 编辑
摘要: 双栈排序 洛谷链接 用双栈进行排序,也就是给出一个序列,让你用两个栈来排序,输出排序的操作类型。 实现也比较简单,如果存在一个k,使得i<j<k且a[k]<a[i]<a[j],那么i和j就不能存在一个栈中。 代码: 1 #include<cstdio> 2 #include<cstdlib> 3 # 阅读全文
posted @ 2017-05-08 16:42 江屿 阅读(201) 评论(0) 推荐(0) 编辑
摘要: car的旅行路线 洛谷链接 这个题关键就是 如何把每个点表示出来,其实求出四个点的坐标后,只需要把这些点连接起来,用一遍folyed求出最短路径就好了。 代码: 1 #include<cmath> 2 #include<cstdio> 3 int x[801],y[801];//x表示横坐标,y表示 阅读全文
posted @ 2017-05-08 15:58 江屿 阅读(270) 评论(0) 推荐(0) 编辑
摘要: Skiing 题目大意: 给定一个M*N的网格,已知在每个网格中的点可以向上下左右四个方向移动一个单位,每个点都有一个高度值。 从每个点开始移动时存在一个速度值,从A点移动到B点,则此时B点的速度为"A的速度*2^(A的高度值-B的高度值)",而A点移动到B点所用的时间则是A点开始移动的速度值的倒数 阅读全文
posted @ 2017-05-08 15:05 江屿 阅读(191) 评论(0) 推荐(0) 编辑
摘要: Stockbroker Grapevine 题目大意是 有N个股票经济人可以互相传递消息,他们之间存在一些单向的通信路径。现在有一个消息要由某个人开始传递给其他所有人,问应该由哪一个人来传递,才能在最短时间内让所有人都接收到消息。若不存在这样一个人,则输出disjoint。 这道题,由于数据范围只有 阅读全文
posted @ 2017-05-08 11:19 江屿 阅读(204) 评论(0) 推荐(0) 编辑
摘要: Constructing Roads 这道题很水,就是一个裸的最小生成树,最不过把已经连接的节点的值再设为0。 代码: 1 #include<cstdio> 2 #include<cstring> 3 #define N 1010 4 int dis[N][N],minn[N],n,m,a,b; 5 阅读全文
posted @ 2017-05-07 21:10 江屿 阅读(200) 评论(0) 推荐(0) 编辑
摘要: 最短路径算法2——Bellman-Ford与SPFA算法 Bellman-Ford算法: 只能计算单源最短路径,时间复杂度为O(nm)n是顶点数,m是边数。 其实这个算法很简单,代码实现也很简单,大致和Floyed差不多吧。 循环n-1次,每次循环遍历所有边,必然会有一些边连接着蓝点与白点。因此每次 阅读全文
posted @ 2017-05-07 19:23 江屿 阅读(220) 评论(0) 推荐(0) 编辑
摘要: 最短路径算法1——Floyed与Dijkstra算法。 Floyed算法: 求图中一个点到另一个点的最短路径,毫无疑问Floyed算法是最简单的,而且是多源最短路径,但时间复杂度很高,达到O(n^3)。 原理就是不断遍历一边所有点,把他们当作中间点,每次更新整个图。 Floyed代码: 1 #inc 阅读全文
posted @ 2017-05-07 11:31 江屿 阅读(240) 评论(0) 推荐(0) 编辑
摘要: Prim算法 Prim算法求最小生成树是采取蓝白点的思想,白点代表已经加入最小生成树的点,蓝点表示未加入最小生成树的点。 进行n次循环,每次循环把一个蓝点变为白点,该蓝点应该是与白点相连的最小边权的是当前蓝点中最小的。这样就相当于向生成树中添加了n-1次最小的边,最后得到的一定是最小生成树。 1 # 阅读全文
posted @ 2017-05-07 09:29 江屿 阅读(341) 评论(0) 推荐(0) 编辑