A multiset is a collection of elements similar to a set, where elements can repeat multiple times. For example, the following is a multiset:
{0, 0, 1, 2, 2, 5, 5, 5, 8}
Given a multiset S defined on non-negative integers, and a target non-negative integer value n such that n does not belong to S, your goal is to insert n into S by using the following 3-step operation, repeatedly:
Your goal is to find the minimum number of operations to perform so that n becomes part of S.
Since the size of S may be large, it will be given in the form of a list (f0, …, fn−1) of size n, where fi represents the number of times that the number i appears in S. (Recall that n is the integer we are trying to insert into S.)
The first line contains a single integer t (1 ≤ t ≤ 200) — the number of test cases. Each two of the following lines describe a test case:
For each test case, print a single line containing the minimum number of operations needed to satisfy the condition.
In the first example, initially, S = {1, 1, 1, 3, 3, 3} and our goal is to have 4 in S. We can do the following: