码迷,mamicode.com
首页 > 其他好文 > 详细

POJ--3311--Hie with the Pie(暴力枚举+floyd)/(状态压缩DP+floyd)

时间:2018-03-15 00:34:00      阅读:197      评论:0      收藏:0      [点我收藏+]

标签:简介   预处理   最短路   区别   哪些   bsp   无法   比较   思路   

简介

状态压缩入门,先说用暴力枚举的方法做的,再说状态压缩DP,对于刚开始学习状态压缩的同学,两者相互比较学习,可以明显看出两者区别,有利于对状态压缩DP的理解,提前说下,两者耗时是 157Ms和 0Ms 。

题意

一披萨店员送披萨,从披萨店开始送给N个客户会给你一个(N+1)*(N+1)的矩阵,对于矩阵 g[i][j] 表示 i 处到 j 处所耗费的时间,0 代表披萨店,每条路径可以重复走。 问:店员从披萨店开始送完所有的披萨再返回店中的最短耗时。注意,出店就拿有 N 个披萨,不必重复返回店里拿;此矩阵不对称,即 g[i][j]!=g[j][i] 。

暴力枚举+floyd的思路:

如果枚举所路过的所有点,因为可以重复走每条线路,所以无法算出深度。应当换个思路再暴力,虽然无法枚举完下一个经过哪个点,但可以枚举完下一个经过哪个没有走过的点即1~N 的全排列,利用 floyd 预处理,算出 从 i 到 j 的最短路存入 g[i][j] ,这样可以忽视 i 到 j 中间路过哪些点;

例如,以此送货的路径是 0 1 2 3 4 5 0 (N=5) ,该路径耗时就是 g[0][1]+g[1][2]+g[2][3]+g[3][4]+g[4][5]+g[5][0] ;

 

POJ--3311--Hie with the Pie(暴力枚举+floyd)/(状态压缩DP+floyd)

标签:简介   预处理   最短路   区别   哪些   bsp   无法   比较   思路   

原文地址:https://www.cnblogs.com/l1l1/p/8570955.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!