HDOJ3347Calculate the expression(字符串处理)
此题是对一些表达式进行求解,题目可能告诉一些变量的值,要求解出由这些变量组成的一个表达式的值。
//2211264 2010-03-19 17:05:35 Wrong Answer 3347 15MS 304K 1111 B C++ //2211343 2010-03-19 17:17:21 Accepted 3347 15MS 304K 1232 B C++ #include <iostream> #include <string> #include <map> #include <cctype> using namespace std; map<string, int> M; int main() { int T, n; string ss, ts; int res; int flag; cin>>T; while(T--) { cin>>n; M.clear(); while(n--) { res = 0; flag = 1; while(cin>>ss && ss != "=") { ts = ss; if(isalpha(ss[0])) {//是表达式 res += M[ss] * flag; } else if(ss == "+") { flag = 1; }else if(ss == "-") { flag = -1; }else { ts = ss; if(ss[0] == '-') { ts = ss.substr(1, ss.length()); if(flag == 1) res -= atoi(ts.c_str()); else res += atoi(ts.c_str()); } else { if(flag == 1) res += atoi(ts.c_str()); else res -= atoi(ts.c_str()); } } } cin>>ss; if(ss == "?") cout<<res<<endl; else { M[ts] = atoi(ss.c_str()); } } } return 0; } /* 5 3 a = -1 b = -1 a + b - 2 = ? 0 100 1 -111 + -9 = ? -10 */
Sep 25, 2022 06:29:08 AM
Candidates who to know the examination pattern or question paper style and want topic wise important questions for all subjects, NCERT Term 1 Sample Paper Class 10 with those candidates in mind here we supplied the NCERT Term-1 Sample Paper 2023 Class 10 for Session exams of SA, FA and Assignments of all subjects and languages as per the newly revised syllabus & curriculum.Candidates who to know the examination pattern or question paper style and want topic wise important questions for all subjects.