编程题
### 问题描述
在一个神秘的魔法学院里,小新正在参加一场有 $K$ 道题目的考试,该场考试有 $N$ 名学生参加。所有的题目并不都有相同的分数 - 你得到一个整数数组 $A$,其中 $A_i$ 表示第 $i$ 道题目的分数。如果一名学生解决了第 $i$ 道题目,他们的总分将加上 $A_i$ 分。注意,没有部分分数 - 他们可以在第 $i$ 道题目上得到 $0$ 分或 $A_i$ 分。对于每个学生 $i$,你还得到了他们在每道题目上的最终结果,形式为一个二进制字符串 $S_i$ - '1' 表示他们解决了那个问题,'0' 表示他们没有解决。
你的任务是找出每个参与者的总分。
### 输入格式
第一行输入两个空格分隔的整数 $N$ 和 $K$,表示参加考试的学生数量和考试的题目数量。
第二行输入 $K$ 个空格分隔的整数 $A_1, A_2, ..., A_K$,其中 $A_i$ 表示第 $i$ 道题目的分数。
接下来的 $N$ 行,每行包含一个长度为 $K$ 的二进制字符串 $S_i$,其中 $S_{ij}$ 表示第 $j$ 道题目的第 $i$ 名学生的结果。$S_{ij} = 1$ 表示他们解决了那个问题,$S_{ij} = 0$ 表示他们没有解决。
数据范围保证:$1 \leq N,K \times 10^3$,$1 \leq A_i \leq 10^5$,$0 \leq S_{ij} \leq 1$。
### 输出格式
输出 $N$ 行,每行一个整数,表示每名学生的总分。
### 样例输入
```text
2 1
100
0
1
```
### 样例输出
```text
0
100
```
### 说明
在测试案例中,第一个学生的二进制字符串是"0",这意味着他没有解决唯一的一道题目。因此,第一个学生的总分是 $0$。
同样,第二个学生的二进制字符串是 "1",这意味着他解决了考试中唯一的一道题目。由于这道题目的分数是 $100$,第二个学生的总分是 $100$。