摘要: "poj3311" 题意 给出一个矩阵,i 行 j 列表示位置 i 到 j 的时间。 求从 0 点出发经过 1 到 n 所有点后并返回 0 点最短耗时。 分析 先用 Floyd 算法,求出两点之间最短路, dp[S][i] 表示访问到 i 这个点时所有点的状态,S 为二进制数,表示这个点是否访问过。 阅读全文
posted @ 2017-06-14 18:06 ftae 阅读(337) 评论(0) 推荐(0) 编辑
摘要: "poj1185" 题意 给出字母矩阵,只能在字母为 P 的位置放置大炮, 如图所示,每个大炮的射程固定,现在要求尽可能多的放大炮,且使得每个大炮都不在其它大炮的射程内。问最多能放多少。 分析 "poj3254" 很类似的一道题,但是注意到这道题,放置一个大炮后,不仅影响到与之相邻的下一行,同时对下 阅读全文
posted @ 2017-06-14 15:22 ftae 阅读(268) 评论(0) 推荐(0) 编辑
摘要: "poj3254" 题意 给出一个01矩阵,1表示当前这个位置可以放牛,要求放牛的方案保证牛不能左右或上下相邻,求方案数。 分析 dp[S][i]: 表示到 i 行时的状态S(用二进制数表示),那么状态转移就是 dp[S][i] += dp[S0][i 1] ,其中 S 为当前行合法状态,S0为上一 阅读全文
posted @ 2017-06-14 09:36 ftae 阅读(228) 评论(0) 推荐(0) 编辑