AT_code_festival_2018_quala_c 半分
题目描述
给定一个长度为 $N$ 的整数序列 $A_1,\ A_2,\ \ldots,\ A_N$。对该数列恰好进行 $K$ 次如下操作:
- 选择一个下标 $i$($1 \leq i \leq N$),将 $A_i$ 除以 $2$,结果向下取整。
请计算经过 $K$ 次操作后,可能得到的不同数列的个数,并对 $10^9+7$ 取模。
输入格式
输入以以下格式从标准输入读入:
> $N$ $K$ $A_1$ $A_2$ $\ldots$ $A_N$
输出格式
输出答案。
说明/提示
## 限制条件
- $1 \leq N \leq 50$
- $0 \leq A_i \leq 10^{18}$($1 \leq i \leq N$)
- $0 \leq K \leq 10^9$
- 所有输入值均为整数。
## 样例解释 1
初始时,数列 $A = [0, 3, 4]$,$K = 2$。经过 $K$ 次操作后,可能得到的数列有 $[0, 3, 4]$、$[0, 1, 2]$ 等。例如,数列 $[0, 3, 4]$ 可以这样实现:
- 选择 $i = 1$,数列变为 $[0, 3, 4]$。
- 再选择 $i = 1$,数列仍为 $[0, 3, 4]$。
又如,数列 $[0, 1, 2]$ 可以这样实现:
- 选择 $i = 2$,数列变为 $[0, 1, 4]$。
- 选择 $i = 3$,数列变为 $[0, 1, 2]$。
由 ChatGPT 4.1 翻译