#7051. 排列计数(二)

排列计数(二)

题目描述

给定一个长为 nn 的字符串 ssss<>? 构成。ss 应该看作是一部分排列的模板,匹配 ss 的排列需要满足以下条件:

    1. 排列由 00nn 的整数组成,每个数字只出现一次,记作 a0,a1,,ana_0,a_1,\cdots,a_n
    1. sis_i<,则要求 ai<ai+1a_i<a_{i+1}
    1. sis_i>,则要求 ai>ai+1a_i>a_{i+1}
    1. sis_i?,则 aia_iai+1a_{i+1} 的大小关系任意

请计算,有多少种排列可以匹配 ss? 由于答案可能很大,输出方案数模 109+710^9+7 的余数。

输入格式

第一行:单个字符串,表示给定的模板,只有 <>? 三种字符。

输出格式

输出共一行:单个整数,表示方案数模 109+710^9+7 的余数。

<<
1
<?
3

数据范围

ss 的长度为 nn,则有

  • 对于30%30\%的数据: 1n101\leq n \leq 10
  • 对于60%60\%的数据: 1n1001\leq n \leq 100
  • 对于100%100\%的数据: 1n10001\leq n \leq 1000