Nội dung Bài tập
- Mã:
-
Div2.MINIGAME35.1:
PHANTUKHOI
- Tên:
- Tính phân tử khối
- Dạng thi:
- oi
- Thang điểm:
- 20 điểm
- Giới hạn thời gian:
- 1 giây
- Giới hạn bộ nhớ:
- 256 MB
- Được tạo bởi:
- phucnq
Cho một chuỗi mô tả công thức hóa học của một chất ( hoặc một nhóm chức). Hãy tính phân tử khối của chất (hoặc nhóm) đó. Biết rằng, C (Carbon) có nguyên tử khối 12, H (Hydro) có nguyên tử khối 1 và O (Oxi) có nguyên tử khối là 16.
Tuy nhiên, chuỗi mô tả công thức đó không đơn giản.
Chẳng hạn: công thức COOH có thể viết thành CO2H, công thức COOHHH có thể viết gọn thành CO2H3.
Hơn nữa, các nhóm giống nhau có thể được gộp lại viết một gốc đại diện, sau đó là chỉ số (số lần) của gốc đó.
Ví dụ: công thức CH(CO2H)(CO2H)(CO2H) được viết gọn thành: CH(CO2H)3.
Số lượng gốc giống nhau được giới hạn trong khoảng từ 2 đến 9.
Hãy viết chương trình tính phân tử khối của chất đề bài cho.
Input:
Một dòng duy nhất gồm một chuỗi các ký tự: C, H, O, (, ), 2, 3, 4, 5, 6, 7, 8, 9 mô tả công thức của một chất (có thể rút gọn hoặc chưa rút gọn). Độ dài chuỗi không quá 100.
Output:
Số nguyên duy nhất: phân tử khối của chất đó.
Ví dụ 1:
Input Output COOH 45
Ví dụ 2:
Input Output CH(CO2H)3 148
Ví dụ 3:
Input Output ((CH)2(OH2H)(C(H))O)3 222
Theme :
Mời bạn soạn code
Ai có thể xem bài này :
Thông tin
Phần thảo luận