标签:style blog http color os io for 2014
/************************************************************************* > File Name: 1.cpp > Author: > Mail: > Created Time: 2014年08月03日 星期日 08时27分22秒 ************************************************************************/ #include<iostream> #include <stack> using namespace std; int book(char c1) { if(c1==‘+‘||c1==‘-‘) return 1; if(c1==‘*‘||c1==‘/‘) return 2; return -1; } int main() { int num; stack<char> s; string str; cin>>num; while(num--) { str =""; cin>>str; str.append(1,‘#‘); for(unsigned int i =0;i<str.length();i++) { switch (str[i]) { case ‘#‘: while(!s.empty()) { cout<<s.top(); s.pop(); } break; case ‘(‘: s.push(‘(‘); break; case ‘)‘: while(s.top()!=‘(‘) { cout<<s.top(); s.pop(); } s.pop(); break; default: if(str[i]>=‘0‘&&str[i]<=‘9‘) cout<<str[i]; else { if(s.empty()) { s.push(str[i]); } else if(book(s.top()) >= book(str[i])) { while(!s.empty()&&book(s.top())>=book(str[i])) { cout<<s.top(); s.pop(); } s.push(str[i]); } else { s.push(str[i]); } } break; } } cout<<endl; } return 0; }
栈的应用,不过规则挺多的,浪费我好长时间。。参考这个http://blog.163.com/kevinlee_2010/blog/static/1698208202011102510740979/
标签:style blog http color os io for 2014
原文地址:http://www.cnblogs.com/ltwy/p/3888167.html