DFS染色解决区域分块问题UVALive 6663

怪我比赛的时候想法太过于杂乱了。

注重于区域的属性了。甚至还想用状态压缩或者是hash来描述分块的区域。

其实我们的可以宏观的角度去审视这个问题。就是求分区的问题。那么我们完全可以标记边框的值为1。即不可行走。

那么我们扫描整片区域。统计一个区域 。就用DFS把这整片区域给覆盖。然后继续扫描下去。

离散化在这里使用。

注意点:在于这是一个数区间块数的问题。假如2者数据没有相差一。也会把一块区域给覆盖掉。这是一个考虑会不会影响离散化后的相邻问题的一个问题。

比赛的时候我当时也没注意。也许以后离散化后要2个方面去考虑一下这个问题。

但是同时我查询到了。可以开2倍的数组。用偶数存储数据。那么同样可以做到。分隔的效果。

 

posted @ 2015-03-09 00:10  Milkor  阅读(223)  评论(0编辑  收藏  举报