题目描述
Problem Statement
You are given a sequence of positive integers $A=(a_1,\ldots,a_N)$ of length N.
There are (2^N-1) ways to choose one or more terms of A. How many of them have an integer-valued average? Find the count modulo 998244353.
Input
Input is given from Standard Input in the following format:
N
$a_1 \ldots a_N$
Output
Print the answer.
Constraints
- $1 \leq N \leq 100$
- $1 \leq a_i \leq 10^9$
- All values in input are integers.
Sample Input 1
3
2 6 2
Sample Output 1
6
For each way to choose terms of A, the average is obtained as follows:
-
If just a_1 is chosen, the average is $\frac{a_1}{1}=\frac{2}{1} = 2,$ which is an integer.
-
If just a_2 is chosen, the average is $\frac{a_2}{1}=\frac{6}{1} = 6,$ which is an integer.
-
If just a_3 is chosen, the average is $\frac{a_3}{1}=\frac{2}{1} = 2,$ which is an integer.
-
If a_1 and a_2 are chosen, the average is $\frac{a_1+a_2}{2}=\frac{2+6}{2} = 4,$ which is an integer.
-
If a_1 and a_3 are chosen, the average is $\frac{a_1+a_3}{2}=\frac{2+2}{2} = 2,$ which is an integer.
-
If a_2 and a_3 are chosen, the average is $\frac{a_2+a_3}{2}=\frac{6+2}{2} = 4,$ which is an integer.
-
If a_1, a_2, and a_3 are chosen, the average is $\frac{a_1+a_2+a_3}{3}=\frac{2+6+2}{3} = \frac{10}{3},$ which is not an integer.
Therefore, 6 ways satisfy the condition.
Sample Input 2
5
5 5 5 5 5
Sample Output 2
31
Regardless of the choice of one or more terms of A, the average equals 5.
输入格式
见题面 Input 部分
输出格式
见题面 Output 部分