#M0065. 小 Z 的四则运算

小 Z 的四则运算

题目描述

小 Z 最近学习了加减乘除的四则运算,四则运算是指加法、减法、乘法和除法四种运算。四则运算是小学数学的重要内容,也是学习其它各有关知识的基础。

我们知道,对于一个四则运算组成的表达式,在没有括号的情况下,要遵循先乘除,后加减的法则进行运算。

也就是说我们定义一个运算优先级,乘除法的优先级高于加减法,并且当运算级别相同时,要按照从左到右的顺序进行。

现在给你一个表达式,请你帮助小 Z 给这个表达式的每一个运算符标出它在整个表达式求值计算时的时间戳 [time][time]。它表示该运算符在计算的过程中是第几个被计算的符号。

时间戳的计数从 11 开始,并且用一个中括号括起来紧跟在该运算符的后面。

例如下列表达式

1+1+56/21021+1+5 * 6 / 2 - 10 * 2

该表达式中有 77 个运算符,将它们打上时间戳后表达式就可以写作

1+[4]1+[5]5[1]6/[2]2[6]10[3]21+[4]1+[5]5*[1]6/[2]2-[6]10 * [3]2

第一个加号后面紧跟的 [4][4] 表示第一个加号在整个表达式中是第 44 个被计算的符号。

输入格式

第一行输入一个正整数 NN,表示输入的四则运算表达式字符串的长度。

接下来输入一行,一个长度为 NN 的字符串,字符串仅包括正整数和四则运算符 +/+−∗/

输出格式

仅一行,请对表达式的每个运算符打上时间戳后输出。

输入输出样例

14
1+1+5*6/2-10*2
1+[4]1+[5]5*[1]6/[2]2-[6]10*[3]2
6
114514
114514

提示

对于 30%30\% 的数据,保证 1N1031≤N≤10^3

对于另 10%10\% 的数据,保证运算符中只有 ++− 两种。

对于 100%100\% 的数据,保证 1N1061≤N≤10^6。字符串是一个合法的表达式,即不会出现连续两个符号,且保证符号的左右侧都为正整数。