Coalitions
문제
There are members in the parliament, and each one of them is a representative of one of the parties. Now the parties have to form a ruling colation.
For a coalition to be able to rule, it needs a majority in the parliament. On the other hand, the more parties in the coalition, the less stable it is because of possible differences of opinion. Thus, a coalition that would still have a majority in the parliament after excluding some of the parties in it is not very sensible.
More precisely, a group of parties can form a stable coalition under two conditions:
- Together, the parties in the coalition have more than members of the parliament.
- If any of the parties were excluded from the coalition, the remaining ones would no longer have more than members of the parliament.
Count the number of possible groups that could form stable coalitions.
입력
The first line of input contains , the number of seats in the parliament, and , the number of parties (, ). The second line contains integers , , , (), where is the number of members of the parliament in the -th party. It is guaranteed that .
출력
The only line of output should contain a single integer: the number of possible stable coalitions.
예제
예제 1
14 5 6 2 1 4 1
4
예제 2
8 8 1 1 1 1 1 1 1 1
56
예제 3
101 6 34 25 19 12 10 1
5