CF1802B.Settlement of Guinea Pigs

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Dasha loves guinea pigs very much. In this regard, she decided to settle as many guinea pigs at home as possible and developed a plan for the next nn days. Every day, she will either buy a new guinea pig or call a doctor to examine all her pets.

Unfortunately, the store where she was going to buy guinea pigs does not understand them. Therefore, it cannot determine their gender. Dasha can't do it either. The only one who can help is a doctor.

To keep guinea pigs, aviaries are needed. Dasha plans to buy them in the same store. Unfortunately, only one species is sold there — a double aviary. No more than two guinea pigs can live in it.

Since Dasha does not want to cause moral injury to her pets — she will not settle two guinea pigs of different genders in one aviary.

Help Dasha calculate how many aviaries in the worst case you need to buy so that you can be sure that at no moment of time do two guinea pigs of different genders live in the same aviary.

As part of this task, we believe that guinea pigs have only two genders — male and female.

输入格式

The first line of input data contains one number tt ( 1t1051 \leqslant t \leqslant 10^5 ) — the number of input data sets.

The first line of each input data set contains one number nn ( 1n1051 \leqslant n \leqslant 10^5 ) — the number of days Dasha has a plan for.

The next line contains nn numbers b1,b2,b3,,bnb_1, b_2, b_3, \ldots, b_n ( 1bi21 \leqslant b_i \leqslant 2 ) — Dasha's plan. If bi=1b_i = 1 , then on the ii th day, Dasha will buy a new guinea pig. If bi=2b_i = 2 , then on the ii th day, a doctor will come to Dasha and help determine the sex of all guinea pigs that Dasha already has.

It is guaranteed that the sum of nn for all input data sets does not exceed 10510^5 .

输出格式

For each set of input data, output one number — the minimum number of aviaries Dasha needs to buy so that no matter what the genders of the pigs turn out to be, we can settle them so that at no point in time do two guinea pigs of different genders live together.

输入输出样例

  • 输入#1

    6
    3
    1 1 1
    3
    2 2 2
    5
    1 1 1 2 1
    10
    1 2 1 2 1 2 1 2 1 2
    20
    1 2 1 1 1 1 1 2 1 2 1 2 2 1 1 1 1 1 1 1
    20
    2 1 1 2 1 1 2 1 2 2 1 1 1 2 2 1 1 1 1 2

    输出#1

    3
    0
    3
    4
    12
    9

说明/提示

In the first set of input data, Dasha needs to put each guinea pig in a separate enclosure, since she does not know their gender.

In the second set of input data, Dasha will buy 00 guinea pigs, which means she will need 00 aviaries.

In the third set of input data, you even need 33 aviaries to put each guinea pig in a separate aviary before the doctor arrives at the 44 th day. When she finds out their gender, at least two guinea pigs will be of the same gender and they can be placed in one aviary, and the third in another aviary. Thus, she will have one free aviary in which she can settle a new guinea pig. So answer is 33 .

In the fourth set of input data, we show that 44 is the optimal answer.

To begin with, we note that the first four guinea pigs can be placed one at a time in an aviary. Then a doctor will come and determine their gender. Among these four guinea pigs there will be at least one pair of the same gender, because: either male guinea pigs are at least 22 , or they are not more than 11 , which means that the female is at least 33 . Now we can put this couple in one aviary, and the other two in separate ones. We will have one more empty aviary where we can put a new pig.

Now let's show that the answer is at least 44 . Let's say that among the first 44 guinea pigs, 33 are female and 11 is male. We need at least 33 aviaries to settle them. Then, when we buy a new guinea pig, we will need another aviary in which we will put it, since we do not know its gender.

首页