bfs
文章平均质量分 80
冷月残星
这个作者很懒,什么都没留下…
展开
-
bfs(大火蔓延的迷宫,UVA 11624)
一开始WA了,因为以为只有一个火源,其实有多个(portions)。真的需要加强英语阅读能力了。解法:这就是一个加了一些限制条件的迷宫问题,限制条件是迷宫会着火,随着时间的推移火会蔓延,仔细思考就会发现每个格子着火的时间是固定而且有迹可循的,如果能预处理出每个格子着火的时间,那么问题就已经解决了(只需要在bfs扩展节点时判断一下即可,如果着火了就当做墙,否则就可以扩展)。那么该怎么原创 2017-02-07 12:34:12 · 609 阅读 · 0 评论 -
bfs(独轮车,UVA 10047)
几个需要注意的地方:①向左转我用d=(d-1)%4,这是错误的,当d=0时d会变成-1,应该用d=(d+3)%4才对。②关于坐标方面的问题,我们在程序实现的时候更喜欢用行与列的概念,而在数学上我们更喜欢用x轴与y轴的概念。但是事实上行是对应y,列是对应x,如果不注意的话很容易就混用了,混用的话会且只会搞错方向。具体解决办法也很简单,把x与y或行与列互换一下即可。或者你干脆别用xy轴的概念就原创 2017-02-07 14:08:57 · 424 阅读 · 0 评论 -
bfs,hash,康托展开(UESTC 485,Game)
一开始时间复杂度算错了。。。当时想一共9!个状态,1000组数据,那么总运算量为3.62880e8,只要数据稍微水一点,那不就过了嘛~~然而我又搞错了,不但没有考虑编码解码的时间复杂度,更没有考虑状态转移的时间复杂度。当时觉得编码解码,状态转移都是常数嘛,直接无视不就好啦。而且前面几题暴力做,结果时间才一点点,所以以为这题也一样。(好吧其实还是自己一直都没算对时间复杂度)事实上状态原创 2017-05-03 13:12:41 · 283 阅读 · 0 评论 -
枚举,bfs(FZU 2150,Fire Game)
主要是通过这道题目思考了很多关于树,图的直径,中心等问题。以下内容跟本题解法弱相关。说到树的直径(树上最远点对),基本上就是最经典的树形dp了,但是紫书上还介绍了一种很不错的方法,两遍dfs。详见紫书p282。网上找的详解及证明:http://blog.sina.com.cn/s/blog_dbe928200101cm5t.html我觉得图应该也是一样的道理原创 2017-05-05 20:19:41 · 354 阅读 · 0 评论 -
模拟,bfs(HDU 5336,XYZ and Drops)
超时,然后加了两个提前终止的判断就过了。其实自己一开始也没有好好算时间复杂度,TLE后觉得最差情况确实妥妥地超时,只好想办法优化,然后想出了3种优化。1、如果没有waterdrops了,就直接break。2、如果没有drops了,就直接break。3、考虑将多个同位置,同方向的drops合并。暂时没有更好的想法,而且哪怕是加上这些优化,在最差情况依旧妥妥地超时。原创 2017-06-06 17:44:21 · 236 阅读 · 0 评论