#1347. [CZOJ 一周一测 R22 D] 栈模板

[CZOJ 一周一测 R22 D] 栈模板

题目描述

cyx2009 有一个栈和一个长度为 nn 的字符串,如果字符串的第 ii 位是:

  • +:cyx2009 在第 ii 个时刻向栈里添加一个正整数。
  • -:cyx2009 在第 ii 个时刻移除栈顶的数。
  • <:第 ii 个时刻栈里的数从栈底到栈顶是递增的。

cyx2009 保证他放进栈的数互不相同并且放进栈里的数均小于等于 + 的个数,现在他想知道合法的放数的方案数对 109+710^9+7 取模的结果,两种方案被视为不同当且仅当某个时刻放进去的数不同。

输入格式

一行一个字符串,意义如上。

输出格式

一行一个整数,表示方案数对 109+710^9+7 取模的结果。

++<+
3

数据范围

对于所有数据,保证 1n2×1051\le n\le2\times10^5

测试点编号 nn 特殊性质
1,21,2 10\le10
3,43,4 2×105\le 2\times10^5 字符串没有 -
5,65,6 2×105\le2\times10^5 字符串没有 <
7,87,8 5000\le5000
9,109,10 2×105\le2\times10^5