你正在与几位程序员合作一个编程项目。令你感到震惊的是,你发现有些人使用制表符(tabs)来缩进代码,而另一些人则在同一个文件中使用空格(spaces)来缩进代码。显然,这些人这样做的时候并没有意识到有什么不妥。
你希望将制表符替换为空格,以便文件具有一致的缩进。一致的缩进意味着对于每一行处于嵌套深度 $k$ ($k \ge 0$) 的代码,该行第一个非空白字符之前应该恰好有 $k \cdot i$ 个空格,其中 $i > 0$。
是否可以通过将每个制表符替换为固定数量的空格来修复文件并实现一致的缩进?
输入格式
输入的第一行包含一个整数 $n$ ($2 \le n \le 100$),表示代码的行数。
接下来的 $n$ 行,每行包含一个字符串,由字符 ‘s’(代表一个空格)和/或 ‘t’(代表一个制表符)组成,后跟一个 ‘{’ 或 ‘}’。每行最多包含 1000 个字符。
保证第一行是单个 ‘{’,最后一行是单个 ‘}’,并且数据中的花括号保证匹配;也就是说,仅将这些字符视为一个字符串,总是可以通过重复删除子串 “{}” 直到最后为空字符串。
输出格式
输出一个整数,表示替换每个制表符所需的最少大于零的空格数,以实现一致的缩进;如果无法实现,则输出 -1。
样例
输入 1
10
{
ss{
sts{
tt}
t}
t{
ss}
}
{
}输出 1
2