zoj 3497 mistwald

咋看起来想图论,其实不是,大概是最短路写太多了吧,一看到地图就来劲。

 

给出地图,求出是否结点 A 是否可能在第 Q 步时到达 结点 B,矩阵表示图的邻接关系,mat[i][j] 表示有无从 i 到 j 的边,1 有 0 无。

(mat ^ q) [i][j] 表示 i 结点有无可能刚好在第 q 步到达结点 j,1 有 0 无。

 

以上讨论所谓 A 结点出发,在第 q 步到达结点 B,是允许在达到 B 结点前经过结点 B 的。题目不允许这种情况,只需要去掉结点 B 的所有出边就行了,既在矩阵中把 B 所在行全部设 0 就行了。

 

需要对矩阵求 Q 次方,Q 很大,不能 1 次方,2 次方,3 次方……一次一次求,把 O(Q) 次乘法降到 O(lgQ) 次,总时间复杂度是 O(n^3 X lgQ)。有 O(n^2) 的矩阵乘法?还没有学习到。n 最大 25,还可以接受。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值