만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

카드 쌍

시간 제한1초메모리 제한1024 MB

요약
n종류 카드의 개수가 주어질 때, 같은 종류 카드 두 장을 다른 종류 카드 한 장으로 바꾸는 거래를 최대 몇 번 할 수 있는지 구합니다.
난이도

보통10점 중 6점

유형
그리디, 정렬, 수학
정답자
아직 제출이 없습니다

문제

손에 든 카드마다 nn가지 종류 중 하나가 정해져 있다. 11부터 nn까지의 각 ii에 대해 종류 ii의 카드를 aia_i장 가지고 있고, 은행에는 모든 종류의 카드가 무한히 있다.

은행과의 거래는 원하는 만큼 몇 번이든 할 수 있다. 거래 한 번에는 손에서 같은 종류의 카드 두 장을 고르고, 은행에서 카드 한 장을 받아 교환한다. 받는 카드의 종류는 방금 낸 두 카드의 종류를 제외한 11부터 nn까지 중 어느 것이든 될 수 있다. 은행에는 그 밖의 종류의 카드가 없으므로 다른 종류는 받을 수 없다.

다음 그림은 첫 번째 예제에서 가능한 거래 순서를 보여준다.

거래를 최대 몇 번 할 수 있는지 구하시오.

입력

첫 줄에 테스트 케이스의 수 tt (1≤t≤1051 \le t \le 10^5)가 주어진다. 각 테스트 케이스의 첫 줄에는 카드 종류의 수 nn (2≤n≤2⋅1052 \le n \le 2 \cdot 10^5)이 주어진다. 둘째 줄에는 a1,a2,…,ana_1, a_2, \ldots, a_n (0≤ai≤1090 \le a_i \le 10^9)이 주어지며, aia_i는 지금 가지고 있는 종류 ii 카드의 수이다. 모든 테스트 케이스의 nn을 합한 값은 2⋅1052 \cdot 10^5를 넘지 않는다.

출력

각 테스트 케이스마다 할 수 있는 거래의 최대 횟수를 한 줄에 하나씩 출력한다.

힌트

그림은 첫 번째 테스트 케이스에서 최적의 거래 순서를 나타낸다.

네 번째 테스트 케이스에서는 같은 종류의 카드 쌍이 하나도 없어서 거래를 전혀 할 수 없다. 따라서 답은 00이다.

예제1

  1. 예제 1

    입력
    9
    4
    2 0 0 1
    2
    5 2
    6
    1 5 0 6 7 1
    4
    1 1 0 1
    2
    4 2
    7
    1 2 4 8 4 2 1
    2
    1 1
    4
    0 0 0 0
    3
    1000000000 1000000000 1000000000
    
    예상 출력
    2
    5
    19
    0
    5
    21
    0
    0
    2999999999