编程题
### 问题描述
在一个神奇的魔法世界中,存在着各种奇幻的生物和神秘的力量。小蓝是一位年轻而勇敢的魔法师,他掌握了一种强大的拼接魔法。
这种拼接魔法可以将两个字符串合并成一个更长的字符串,从而获得新的力量和价值。然而,这种力量和价值不是简单相加的,它们与字符串中的特定元素相关。
具体来说,小蓝有 $n$ 个字符串,每个字符串都由字符 `a` 或者 `b` 组成。他可以进行 $q$ 次拼接操作,每次操作都选择两个字符串进行拼接。而每次操作的价值是根据一个参数 $k$ 来确定的。
参数 $k$ 表示要求拼接后的字符串中必须包含所有长度为 $k$ 的子串(即由 `a` 和 `b` 组成的长度为 $k$ 的字符串)。而产生的价值是从 $1$ 到 $k$ 的所有整数的和。
现在,小蓝需要你的帮助,根据每次操作的选择,计算出产生的最大价值。
### 输入格式
第一行输入两个整数 $n$ 和 $q$($1 \le n,q \le 100$),表示字符串的数量和拼接操作的次数。
接下来 $n$ 行,每行输入一个只由字符 `a` 或者 `b` 组成的字符串 $s_i$,保证所有字符串的长度之和不超过 $100$。
接下来 $q$ 行,每行输入两个整数 $u_i$ 和 $v_i$($1 \le u_i,v_i \le n$),表示进行拼接操作的字符串的索引。
### 输出格式
输出仅一行,表示每次操作产生的最大价值。
### 样例输入
```
3 2
ab
ba
aabba
1 2
1 3
```
### 样例输出
```
1
3
```