编程题
### 问题描述
小明希望给 $n$ 个游戏角色起名字,小红给了她的建议,小红希望第 $i$ 个角色的名字为长度为 $a_i$ 的字符串 $S_i$。小明在参考小红意见的前提下,设立了一个命名规则:
- 最开始,令 $k_i=1(1\leq i \leq n)$;
- 从 $1$ 至 $n$ 依次执行如下操作:
- 若将 $S_i$ 重复 $k_i$ 次得到的字符串 $t$ 已经被前面的角色用过了,则令 $k_i=k_i+1$,重新执行操作。
- 若将 $S_i$ 重复 $k_i$ 次得到的字符串 $t$ 没有被前面的角色用过了,则 $t$ 被该角色使用。
小明想问问你,对这 $n$ 个角色起完名字后,$\sum_{i=1}^{n}k_i$ 是多少。
### 输入格式
第一行包含一个整数 $n$,分别表示字符串的个数。
第二行包含 $n$ 个整数,表示数组 $a$。
接下来 $n$ 行,每行表示一个长度为 $a_i$ 的字符串 $S_i$。
**保证字符串 $S_i$ 仅由小写字母组成。**
### 输出格式
输出共 $1$ 行,包含一个整数,表示 $\sum_{i=1}^{n}k_i$。
### 样例输入
```text
3
8 8 8
xiaoming
xiaoming
xiaohong
```
### 样例输出
```text
4
```
### 评测数据规模
$1\leq n \leq 2\times 10^5$,$1\leq \sum_{i=1}^{n}a_i \leq 2\times 10^5$。