(本题数据有误,暂未修复)
今天JM要求你完成大量的小学数学题,如果你不能按时正确地完成就会被JM用黑魔法变成皮皮虾,然后被czq和flh抓去做成炸虾球。为了不被吃掉,你必须解决如下问题:
给定 T 组算术表达式,要求你算出每个表达式的结果。由于结果可能很大,你需要输出的是对 109+7 取模的结果。
输入的表达式均满足:
-
表达式以中缀表达式的格式给出,每个词素(运算符或操作数)之间用零至三个空格隔开,表达式的首尾两端无多余空格;
-
表达式可能是非法的;
-
表达式包括 + , - , * , / 四种运算符,分别表示加减乘除,其中除法运算需要向下取整;
-
表达式包括 ^ 运算符,表示乘方运算,例如 x ^ y 表示 xy ;
-
表达式包括 ( , ) 括号;
-
表达式中的操作数为 [0, 231−1] 范围内的整数;
-
表达式中的操作数的个数不超过 100 ;
-
表达式中的左右括号的总个数不超过 100 。
关于 ^ 运算符:
-
乘方运算的优先级高于加减乘除,例如 2 ^ 3 * 4 等价于 (2 ^ 3) * 4 ;
-
乘方运算自右向左结合,例如 2 ^ 3 ^ 2 等价于 2 ^ (3 ^ 2) ;
-
当幂次为负数时,需转换为模意义下等价的在 [0, 109+7] 范围内的非负数进行计算,例如 2 ^ (1 - 2) 在计算时等同于 2 ^ 1000000006 。
如果表达式非法,则仅限于以下几种错误中的一种或多种: