CF1143A The Doors
题目描述
三年过去了,一切都没有改变。伦敦依然下着雨,Black 先生不得不关上家里的所有门,以免被淹。有一次,Black 先生变得非常紧张,他先打开了一扇门,然后又打开了一扇门,再打开一扇,如此反复,直到他把家里的所有门都打开了。
Black 先生的家有且只有两个出口,我们称之为左出口和右出口。每个出口都有若干扇门,因此家里的每一扇门都位于左出口或右出口。你知道每扇门的位置。最初所有门都是关闭的。只有当至少一个出口的所有门都被打开时,Black 先生才能离开家。现在给出 Black 先生打开门的顺序,请你找出最小的下标 $k$,使得在打开前 $k$ 扇门后,Black 先生可以离开家。
需要注意的是,Black 先生每扇门最多只打开一次,最后所有门都被打开。
输入格式
第一行包含一个整数 $n$($2 \le n \le 200\,000$),表示门的数量。
第二行包含 $n$ 个整数,表示 Black 先生打开门的顺序。第 $i$ 个整数为 $0$ 表示第 $i$ 个被打开的门位于左出口,为 $1$ 表示位于右出口。
保证至少有一扇门在左出口,至少有一扇门在右出口。
输出格式
输出一个最小的整数 $k$,使得在打开前 $k$ 扇门后,Black 先生可以离开家。
说明/提示
在第一个样例中,前两扇门都在左出口,所以当 Black 先生只打开这两扇门时,左出口还有两扇门未打开,右出口还有一扇门未打开,因此此时他还无法离开家。
当他打开第三扇门时,右出口的所有门都被打开,所以 Black 先生可以离开家。
在第二个样例中,前两扇门被打开后,每个出口都还有一扇门未打开。
当三扇门都被打开后,Black 先生可以通过左出口离开家。
由 ChatGPT 4.1 翻译