Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
118394 | 梁乃元 | 后序表达式 | C++ | 运行出错 | 0 | 0 MS | 248 KB | 846 | 2023-12-30 10:42:27 |
# include <bits/stdc++.h> using namespace std ; stack <int> num ; int main ( ) { string s ; int a = 0 , ans = 0; cin >> s ; for ( int i = 0 ; i < s . size ( ) ; i ++ ) { if ( s [i] == '@' ) { break ; } if ( '0' <= s [i] && s [i] <= '9') { a *= 10 ; a += s [i] - '0' ; } else if ( s [i] == '.' ) { num . push ( a ) ; a = 0 ; } else { int t = num . top ( ) ; num . pop ( ) ; int b = num . top ( ) ; num . pop ( ) ; switch ( s [i] ) { case '+' : { b += t ; break ; } case '-' : { b -= t ; break ; } case '*' : { b *= t ; break ; } case '/' : { b /= t ; break ; } } num . push ( b ) ; } } cout << num . top ( ) << endl ; return 0 ; }