CF1824A/1825C题解
我们可以先定义:
- 一类人从左边进,挨着遇到的第一个人坐下。
- 二类人从右边进,挨着遇到的第一个人坐下。
- 三类人坐在第 个座位上,如果那个座位有人了,离开。
很明显,有以下几个结论:
- 只要三类人人数不大于 ,就能把他们全安排下。
- 如果第一个入座的人是一类人,那二类人就可以退票了(第 个座位被占了),反之亦然。
所以我们可以先让一个三类人入座,把所有座位分为两部分,左边在让所有三类人入座的基础上再让一类人入座,右边在让所有三类人入座的基础上再让二类人入座。枚举这个把所有座位分成两部分的特殊三类人即可。
当然还得特判以下两种情况:
- 只坐一、三类人。不坐二类人。
- 只坐二、三类人。不坐一类人。
理论存在,代码如下:
1 |
|