化学竞赛
测试数据来自 wjszez/1579
【问题描述】
身为一个信息选手兼化竞选手,夏夏最近对如何用算法实现求物质的相对分子质量产生了疑问。他决定用大写字母来代替原子。(虽然只有26个原子看起来非常的不科学)。
原子构成分子,每个分子都有一个分子式。例如AAABBB表示一个分子。而分子中一段相同的式子,如BBB……BBB(n个B),可被缩写为(B)n,及ABABAB可写为(AB)3。若该的重复式子只有一个大写字母,则可以省略括号,例如(B)3可写为B3。
分子式中每一个原子都有自己的原子质量,而本题中每个字母代表的原子质量就是其字母表中的位次(A为1,依次类推),你的程序必须输出一个用分子式表示的分子质量对1000000007取模的结果。分子的质量定义为所有包括的原子的质量之和,例如,(ABB)3D4E的相对分子质量为(1+2+2)*3+4*4+5=36,取模的结果也为36
【输入格式】
输入一个字符串s(只包含26个大写字母、左右括号和数字)
【输出格式】
一个数字,表示该分子的相对分子质量
【输入样例】
(ABB)3D4E
【输出样例】
36
【数据说明】
对于30%的数据,没有括号;
对于100%的数据,字符串长度n<=1000000,保证数字在2~9之间。
信息
- ID
- 1991
- 难度
- (无)
- 分类
- (无)
- 标签
- 递交数
- 0
- 已通过
- 0
- 通过率
- ?
- 上传者