摘要: 题意:有n(n<=1000)个城市,m(m<=10000)条边,第i个城市油价为pi (pi<=100),每升油能行驶一公里,有q (q<=100)个询问,每个询问给出汽车油箱的容量c (c<=100),起点u,终点v,问从u到v最少花费是多少?分析:每个城市加多少油是未知的,借鉴dijkstra算法,每个城市可以加1单位的油,也可以转移到其它城市,用优先级队列来存储,每次取费用最小的状态。用b[i][j]表示到达点i,剩余油量为j的最小花费,避免无用计算。一开始枚举了所有能加的油量,TLE。const int N = 1001, M = 101;int p[N] 阅读全文
posted @ 2013-06-04 14:51 心向往之 阅读(144) 评论(0) 推荐(0) 编辑