怪我比赛的时候想法太过于杂乱了。
注重于区域的属性了。甚至还想用状态压缩或者是hash来描述分块的区域。
其实我们的可以宏观的角度去审视这个问题。就是求分区的问题。那么我们完全可以标记边框的值为1。即不可行走。
那么我们扫描整片区域。统计一个区域 。就用DFS把这整片区域给覆盖。然后继续扫描下去。
离散化在这里使用。
注意点:在于这是一个数区间块数的问题。假如2者数据没有相差一。也会把一块区域给覆盖掉。这是一个考虑会不会影响离散化后的相邻问题的一个问题。
比赛的时候我当时也没注意。也许以后离散化后要2个方面去考虑一下这个问题。
但是同时我查询到了。可以开2倍的数组。用偶数存储数据。那么同样可以做到。分隔的效果。