香草读书

字:
关灯 护眼
香草读书 > 编程之战 > 第二十章 化学分子式

第二十章 化学分子式

第二十章 化学分子式 (第2/2页)

不过好在他很快通过观察发现了一些规律:
  
  这些分子式中,有可能出现很多成双成对的括号,包括圆的,方的,卷曲的,括号后面如果跟随了数字,那就表明,括号里的原子数量要乘以多少倍。例如“Fe(NO3)2”,它由一个铁原子,两个氮原子,六个氧原子组成。
  
  这个题目的难点在于括号的处理上,有三种类型的括号,括号与括号之间有嵌套,有N对括号的情况。
  
  所以首先第一步,就是统一括号,将大括号,中括号全部转化为小括号。
  
  第二步正式开始解析,从左到右扫描分子式字符串,遇到小括号就将括号内的内容递归,统计原子数目。
  
  第三步,用各种原子的数目除以总数,就可以求出各自所占的比例来。
  
  有了正确的思路,写出代码不过是水到渠成的事情。
  
  杨成只花了个多小时就搞定了编码任务,而更多的时间则花在了对分子式的测试上面。
  
  几个小时后,苏青莲走过来。
  
  “小杨,完成得怎么样了?有没有遇到难点?”
  
  杨成转身递给他一张密密麻麻写满了各种比例的文件。
  
  “做的不错”,苏青莲微笑着点点头。
  
  “叮!恭喜您完成了化学分子式解析任务!”
  
  “当前积分43分,击败了全球24%的玩家,请您再接再厉!”
  
  “成成好棒!”,系统点了个赞。
  
  “我先去找网吧老板,买一箱方便面,租个单间,这样就能度过一个月啦!”
『加入书签,方便阅读』
热门推荐
顶级神豪 史上最强炼气期 全职法师 大小姐她总是不求上进 许你万丈光芒好 麻衣神婿 绝代神主 我不想继承万亿家产 寒门崛起 机武风暴