POJ 2694 逆波兰表达式 解题报告
POJ 2694 逆波兰表达式 解题报告
编号:2694
考查点:递归
思路:一开始拿道题还以为自己搞不定,在纸上写写画画后突然相当原来递归可以多个return,然后就想到switch,剩下的就好办了,仍然保持一次编译通过,一次AC的战绩.。oh yeah
提交情况:写写画画十分钟,代码五分钟.一次AC,1000K,0MS..。
Source Code:
//POJ Grids 2694
#include <string>
#include <iostream>
using namespace std;
double calc()
{
string s;
cin>>s;
switch (s[0])
{
case '+':
return calc()+calc();break;
case '-':
return calc()-calc();break;
case '*':
return calc()*calc();break;
case '/':
return calc()/calc();break;
default:
return atof(s.c_str());
}
}
int main()
{
double f = calc();
printf("%f\n",f);
return 0;
}
总结:相信自己,多想下思路自然有.。书上的竟然和我的一样,啊哈哈,学到个atof.。
By Ns517
Time