sokoban专题

codeforces:C. 1D Sokoban【二分专练 + 灵光一现】

分析 推箱子问题,问能够让多少个箱子推到特殊位置,从0开始推 那么我们有一个很贪心的思路:把连续箱子中的最右的位置放到特殊位置上,这样可以对于每个特殊位置的左边覆盖最多的位置 这样的话我们需要二分,记录左边连续的箱子数,和原本same的个数 左边连续的箱子特殊位置数两次二分: 1.找到连续的个数 2.找到左边界的idx 3.计算在这连续区间中的特殊位置个数即可 Ac code impor