#P570. 「LibreOJ Round #11」Misaka Network 与任务

「LibreOJ Round #11」Misaka Network 与任务

题目描述

测试完毕之后,研究者们现在要用 Misaka Network 进行任务。当前能处理任务的个体一共有 NN 个,以及 MM 个处理任务的方案(可能相同),第 ii 个方案给出一个 NN 位二进制数 AiA_i,表示选用 AiA_i 这个集合的个体进行任务。现在一共要进行 KK 次任务,每次任务可以选取任意一个方案,然后由这个方案的集合 AiA_i 的所有个体合作完成,要求至少有一个个体参加了所有的 KK 次任务。

求出不同的选择方式数对 109+710^9+7 取模的结果,两种选择方式不同,当且仅当它们在某一次任务选择的方案的编号不同。

输入格式

第一行三个整数 NNMMKK

接下来一行 MM 个整数 AiA_i,以十进制的方式给出。

输出格式

一行一个整数,表示方案数对 109+710^9+7 取模的结果。

2 3 4
1 2 3
31
4 8 8
7 2 8 2 4 3 15 4
456160

数据范围与提示

对于所有数据 $1 \leq N \leq 22,1 \leq M \leq 10^6,1 \leq K \leq 10^9,0 \leq A_i < 2^N$。

子任务编号 分值 NN MM KK 特殊性质
1 55 4\leq 4 8\leq 8 -
2 1010 7\leq 7 1000\leq 1000 10\leq 10
3 1515 105\leq 10^5 109\leq 10^9
4 10\leq 10
5 15\leq 15
6 2020 20\leq 20 AiA_i[0,2N)[0,2^N) 中等概率随机
7 22\leq 22 106\leq 10^6 -