紫丁香

题目描述

对于一个字符串 $A$,记 $A_i$ 表示它的第 $i$ 个字符。 设 $S$ 是任意长度为 $m$ 的 $01$ 串。我们有 $n$ 个操作,第 $i$ 个操作可以表示成一个定义域和值域都是长度为 $m$ 的 $01$ 串集合的函数 $f_i$,表示经过这次操作后 $S$ 会变成 $f_i(S)$。而函数 $f_i$ 可以由一个长度为 $m$ 的串 $T_i$ 表示,$T_i$ 由 $\texttt{0,1,-}$ 三种字符组成,其中: - $T_{i,j}=\texttt{0}$ 表示 $[f_i(S)]_j=\texttt{0}$。 - $T_{i,j}=\texttt{1}$ 表示 $[f_i(S)]_j=\texttt{1}$。 - $T_{i,j}=\texttt{-}$ 表示 $[f_i(S)]_j=S_j$。 也就是说,每个操作会将 $S$ 的一些位赋值为 $0$,一些位赋值为 $1$,还有一些位不变。 现在有 $q$ 次操作,每次操作给定一个长度为 $m$ 的 $01$ 串 $S$,你可以对它做任意多次操作,操作的顺序任意,一个操作可以做多次。得到的串 $S'$ 可以被看做一个二进制数,求对应二进制数最大的 $S'$。

输入输出格式

输入格式


第一行:三个整数 $m,n,q$。 接下来 $n$ 行:每行一个长度为 $m$ 的串 $T$,表示一种操作。 接下来 $q$ 行:每行一个长度为 $m$ 的串 $S$,表示一个询问。

输出格式


输出 $q$ 行:每行一个长度为 $m$ 的串,依次表示每个询问的答案。

输入输出样例

输入样例 #1

5 3 3
-1-01
011-0
--010
00000
10010
00101

输出样例 #1

01110
11010
01110

说明

**【样例解释】** 对于第一个询问串 $\texttt{00000}$,可以依次进行操作 $3,2$,得到最优的 $S'$: $$\texttt{00000}\to \texttt{00010}\to \texttt{01110}$$ 对于第二个询问串 $\texttt{10010}$,可以依次进行操作 $1,3$,得到最优的 $S'$: $$\texttt{10010}\to \texttt{11001}\to \texttt{11010}$$ 对于第三个询问串 $\texttt{00101}$,可以依次进行操作 $3,2$,得到最优的 $S'$: $$\texttt{00101}\to \texttt{00010}\to \texttt{01110}$$ --- **【数据范围】** 对于全部数据:$1\leq m\leq 22$,$1\leq n,q\leq 10^5$,$T$ 仅包含 $\texttt{0,1,-}$ 三种字符,$S$ 仅包含 $\texttt{0,1}$ 两种字符。 | 子任务编号 | $m\leq$ | $n\leq$ | $q\leq$ | 特殊性质 | 分值 | | :----------------: | :-----: | :-----: | :-----: | :-----------------------: | :--: | | $\text{Subtask 1}$ | $10$ | $1000$ | $1$ | 无 | $10$ | | $\text{Subtask 2}$ | $10$ | $1000$ | $1000$ | 无 | $20$ | | $\text{Subtask 3}$ | $20$ | $10^5$ | $10^5$ | $T$ 中没有 $\texttt{-}$ | $10$ | | $\text{Subtask 4}$ | $18$ | $10000$ | $10$ | 无 | $18$ | | $\text{Subtask 5}$ | $20$ | $10^5$ | $10$ | 无 | $18$ | | $\text{Subtask 6}$ | $22$ | $10^5$ | $10^5$ | 无 | $24$ | --- ![](https://cdn.luogu.com.cn/upload/image_hosting/793whkzq.png)