CF1373C Pluses and Minuses
题目描述
给定一个只包含字符 $+$ 和 $-$ 的字符串 $s$。你需要对该字符串执行如下过程。该过程可用以下伪代码描述:
```
res = 0
for init = 0 to inf
cur = init
ok = true
for i = 1 to |s|
res = res + 1
if s[i] == '+'
cur = cur + 1
else
cur = cur - 1
if cur < 0
ok = false
break
if ok
break
```
注意,$inf$ 表示无穷大,字符串的下标从 $1$ 到 $|s|$。
你需要计算该过程结束后 $res$ 的值。
输入格式
第一行包含一个整数 $t$($1 \le t \le 1000$),表示测试用例的数量。
接下来的每个测试用例包含一行字符串 $s$($1 \le |s| \le 10^6$),只包含字符 $+$ 和 $-$。
保证所有测试用例中 $|s|$ 的总和不超过 $10^6$。
输出格式
对于每个测试用例,输出一个整数,表示该过程结束后 $res$ 的值。
说明/提示
由 ChatGPT 4.1 翻译