化学题
题目描述
化学是 Smart 一生挥之不去的阴影,这导致他只要看到任何与化学有关的问题都会发疯。无奈之下,这道题只能交给你来做了。
现在给你一些化学元素和它们的相对原子质量。你需要求出由这些元素组成的分子的相对分子质量。
格式
输入格式
第一行两个正整数 \(n,m\),表示 \(n\) 种化学元素,\(m\) 种分子;
接下来 \(n\) 行,每行一个字符串和一个浮点数,表示原子的名称和相对原子质量。加下了 \(m\) 行,每行一个字符串,表示分子。
输出格式
\(m\) 行,每行一个整数,表示所求分子的相对分子质量 四舍五入取整后 的结果。
样例1
样例输入1
5 3
H 1.00794
C 12.0107
O 15.9994
Cu 63.546
S 32.065 CH4
CH3(CH2)4CH3 CuSO4.5H2O
样例输出1
16
86
250
样例解释
对于第二个询问,分子中包含 \(6\) 个 \(C\),\(14\) 个 \(H\);
对于第三个询问,分子中包含 \(1\) 个 \(Cu\),\(1\) 个 \(S\),\(10\) 个 \(H\),\(9\) 个 \(O\)
限制
对于 \(50\%\) 的数据,每组询问中均不含有“\(.\)”或左右括号。
对于 \(70\%\) 的数据,每组询问中均不含有“\(.\)”。
对于 \(100\%\) 的数据,\(n<=118,m<=100\),每组询问字符串长度不超过 \(10000\),且仅包含数字、大小写英文字符、“\(.\)”和左右括号。