专栏文章

P10509 停车场 题解

P10509题解参与者 6已保存评论 5

文章操作

快速查看文章及其快照的属性,并进行相关操作。

当前评论
5 条
当前快照
1 份
快照标识符
@miqst2zm
此快照首次捕获于
2025/12/04 10:09
3 个月前
此快照最后确认于
2025/12/04 10:09
3 个月前
查看原文

1. 题目解释

给出一个 n×nn\times n 的矩阵,要求在这个矩阵中放置车位使得每个车位都能通向出口,问车位最多的数量。

2. 思路

暴搜显然是不行的,因此我们考虑贪心。
首先我们考虑,一个空地附近最多能有几个车位。
假如这个停车场是一条直道,显然最多能有 66 个,就像下面这个(以下用 11 代表车位,00 代表空地):
CPP
111111111111111111
000000000000000000
111111111111111111
因此我们得到答案上界:2n23\dfrac{2n^2}{3}
显然这不是答案,因为如果全部直排,上方的所有车位都到不了出口。
因此我们需要加入弯道。
考虑一个弯道处的车位数量:
CPP
011
100
101
在每一个弯道处都会减少一个车位,因此我们考虑统计弯道数量。
如果我们采用回形道路,容易发现每三行就会出现两个弯道,比如:
CPP
011111110
100000001
101111101
101101101
101101101
101101101
101101101
101100001
001111111
因此最终的弯道数量为 2n3\dfrac{2n}{3},答案为 2n22n3\dfrac{2n^2-2n}{3}

评论

5 条评论,欢迎与作者交流。

正在加载评论...