摘要: 题意:给定一个矩阵,每个元素代表了一个开销,每个位置只能够由上,左,右这些位置传递过来,问从第一行走到最后一行的最少代价为多少.解法:1.最短路 若是用最短路来解这一题,我们需要进行构边,同层相邻的节点连双向边,不同层从上往下连单向边,最后设定一个超级源点和超级终点即可.代码如下:#include <cstdlib>#include <cstring>#include <cstdio>#include <queue>#include <iostream>#include <algorithm>#include <ve 阅读全文
posted @ 2013-01-07 18:29 沐阳 阅读(843) 评论(0) 推荐(0) 编辑
摘要: priority_queue调用 STL里面的 make_heap(), pop_heap(), push_heap() 算法实现,也算是堆的另外一种形式。先写一个用 STL 里面堆算法实现的与真正的STL里面的 priority_queue用法相似的priority_queue, 以加深对 priority_queue 的理解#include<iostream>#include<algorithm>#include<vector>usingnamespacestd;classpriority_queue{private:vector<int>d 阅读全文
posted @ 2013-01-07 13:43 沐阳 阅读(1696) 评论(0) 推荐(0) 编辑