编程题
### 问题描述
最近,小蓝对字符串产生了浓厚的兴趣,一天,小蓝的老师给他出了一个问题,老师会给小蓝 $n$ 个字符串,即从 $S_1$ 至 $S_n$ ,小蓝可以对其中的任意一个字符串进行如下操作:
将这个字符串的最前一位移动到最后一位。
小蓝的目标是将 $n$ 个字符串变成一致的,他可以进行任意次数的操作,请问他所要进行操作的最小次数是多少,若无法完成目标则返回 `None` 。
### 输入格式
第一行输入包含一个整数 $n$ 代表接下来有 $n$ 个字符串,接下来 $n$ 行输入 $n$ 个字符串 。
### 输出格式
若能完成目标则返回一个整数代表操作的最小次数,若不能则打印 `None` 。
### 样例输入
```text
3
sadfg
dfgsa
fgsad
```
### 样例输出
```text
4
```
### 说明
示例中:统一转为 `fgsad` 即为最佳方案,第一个字符操作第一次变成 `adfgs` 第二次变成 `dfgsa` 如是变化。
$0\leq n \leq 50 , 1\leq |S_i| \leq 40(i \in [1,n])$。