题目内容 小 D 喜欢研究鲨鱼,这些鲨鱼编号为 0,1,⋯,2 L −1。每条鲨鱼被分成了 L 段,每段的颜色为蓝、红中的一种。对于鲨鱼 i,令 i= i=1 ∑ L c k 2 L−k (c k ∈{0,1}) 为 i 的 二进制展开,若 c k =0,则鲨鱼 i 的第 k 段是蓝色的,否则是红色的。
每条鲨鱼有一个 0 到 9 的整数表示它的攻击性。给出一个长度为 2 L 的字符串,其中字符均在 0 到 9 的范围内,第 i 位字符表示第 i−1 条鲨鱼的攻击性。
这些鲨鱼移动速度非常快,所以他们经常从小 D 的研究所逃跑,因此,研究所附近的渔民投诉时常看见从研究所逃出的鲨鱼。
研究所整理出了 Q 天来住户的举报清单,第 d 天的收到的举报是一个长度为 L 且仅包含 0,1,? 的字符串 T d 。
如果 T d 的第 j 个字符为 0,这意味着逃跑鲨鱼的第 j 段是蓝色的;
如果 T d 的第 j 个字符为 1,这意味着逃跑鲨鱼的第 j 段是红色的;
如果 T d 的第 j 个字符为 ?,这意味着没有人注意到逃跑鲨鱼的第 j 段是什么颜色的。
为了估计逃跑的鲨鱼的风险,小 D 知道所有可能逃跑的鲨鱼的攻击性之和。你的任务是对于每天的投诉清单,计算可能从实验室逃跑的鲨鱼的攻击性之和。
输入格式 第一行包括两个整数 L,Q,表示鲨鱼的颜色段数与收到投诉的天数。
第二行包括一个长度为 2 L 的字符串 S,描述鲨鱼的攻击性。
接下来 Q 行,第 d+2 行有长为 L 的字符串,表示 T d 。
输出格式 输出共 Q 行,每行一个整数,表示所有可能逃跑的鲨鱼的攻击性之和。
样例 1 输入 3 5 12345678 000 0?? 1?0 ?11 ??? 样例 1 输出 1 10 12 12 36