#P13717. [ARC099F] Eating Symbols Hard
[ARC099F] Eating Symbols Hard
题目描述
高桥君脑海中总是浮现着一个长度为 的整数序列 $A = (A_{-10^9}, A_{-10^9 + 1}, \ldots, A_{10^9 - 1}, A_{10^9})$,以及一个整数 。
一开始,整数序列 的所有元素都是 ,整数 的值也是 。
每当高桥君吃下一个符号 +、-、> 或 < 时,脑海中的整数序列 和整数 会发生如下变化:
- 吃下
+时, 的值加 。 - 吃下
-时, 的值减 。 - 吃下
>时, 的值加 。 - 吃下
<时, 的值减 。
高桥君有一个长度为 的字符串 ,其中每个字符都是 +、-、> 或 < 之一。高桥君可以选择一组整数 ,满足 ,然后依次吃下 的第 到第 个字符。若吃完后脑海中的整数序列 与高桥君从第 个字符开始顺序吃完 的所有符号后得到的 完全相同,则称该组 是可行的。
请计算有多少组 是可行的。
输入格式
输入从标准输入读取,格式如下:
输出格式
请输出答案。
输入输出样例 #1
输入 #1
5
+>+<-
输出 #1
3
输入输出样例 #2
输入 #2
5
+>+-<
输出 #2
5
输入输出样例 #3
输入 #3
48
-+><<><><><>>>+-<<>->>><<><<-+<>><+<<>+><-+->><<
输出 #3
475
说明/提示
限制条件
- 的每个字符都是
+、-、>或<之一
样例解释 1
高桥君吃完 的所有符号后,,其余 的元素全为 。使 与此相等的 有以下几组:
样例解释 2
注意,即使 与高桥君吃完 的所有符号后得到的 不同,也没有关系。
由 ChatGPT 4.1 翻译