7018 - 代数表达式
时间限制 : 1 秒
内存限制 : 128 MB
代数表达式的定义如下:
例如,下面的式子是合法的代数表达式:
a;
a+b*(a+c);
a*a/(b+c);
下面的式子是不合法的代数表达式
ab;
a+a*/(b+c);
要求:输入一个字符串,以“;”结束,“;”本身并不是代数表达式中的字符,仅作为结束。若表达式正确,则输出“OK”,若表达式不正确,则输出“ERROR”,及错误类型。
错误类型约定:
1:式子中出现了不允许的字符
2:括号不匹配
3:其他错误
例如:
输入:a+(b); 输出:OK
输入:a+(b+c*a; 输出:ERROR 2
输入
输入数据为一行一个字符串,以“;”结束,“;”本身并不是代数表达式中的字符,仅作为结束。
输出
输出数据为一行一个字符串;
若表达式正确,则输出“OK”,若表达式不正确,则输出“ERROR”,及错误类型。
样例
输入
a+(b);
输出
OK
输入
a+(b+c*a;
输出
ERROR 2
来源
NOIP