ccf-csp 201912-3 化学方程式
第一次做好吃力,学完编译原理之后感觉豁然开朗 :-)
严格按照题中所给的BNF形式化定义来写代码,如下图
当然其中一些比较小的东西(比如uppercase,lowercase之类的),直接检测了吧,其他的一个一个编写函数来匹配,就是递归下降法的思路,下面是代码部分,看函数名应该很好懂,元素和元素的个数我使用map存的,一是检索起来方便,而是字符串有序,比较起来方便(从头到尾比较,依次比较元素名和元素个数)
1 |
|
第一次做好吃力,学完编译原理之后感觉豁然开朗 :-)
严格按照题中所给的BNF形式化定义来写代码,如下图
当然其中一些比较小的东西(比如uppercase,lowercase之类的),直接检测了吧,其他的一个一个编写函数来匹配,就是递归下降法的思路,下面是代码部分,看函数名应该很好懂,元素和元素的个数我使用map存的,一是检索起来方便,而是字符串有序,比较起来方便(从头到尾比较,依次比较元素名和元素个数)
1 | #include<iostream> |