Xử lý chuỗiBăm chuỗi
Mô tả
Đình Bảng (Bắc Ninh) nổi tiếng với hệ thống bia mộc khắc đầy đủ niên đại xây dựng từ thế kỷ 17. Trên các tấm bia, năm xây dựng thường được ghi bằng chữ Hán — nhưng khi đội trùng tu nhập liệu vào máy tính, họ dùng ký hiệu La Mã để mã hóa cho gọn. Bạn là tình nguyện viên phụ trách kiểm tra dữ liệu bia mộc.
Cho một chuỗi s gồm các ký tự La Mã hợp lệ, hãy chuyển đổi chuỗi này sang số thập phân tương ứng. Quy tắc ghi số La Mã như sau:
I= 1,V= 5,X= 10,L= 50,C= 100,D= 500,M= 1000.- Bình thường, ta cộng dồn giá trị các ký tự từ trái sang phải. Ví dụ
III= 1 + 1 + 1 = 3. - Tuy nhiên, nếu một ký tự có giá trị nhỏ hơn ký tự ngay sau nó, ta phải trừ giá trị ký tự nhỏ đi. Ví dụ
IV= 5 − 1 = 4,IX= 10 − 1 = 9,MCMXCIV= 1000 + (1000 − 100) + (100 − 10) + (5 − 1) = 1994.
Đầu vào
- Một chuỗi
s(1 ≤ |s| ≤ 15) chỉ chứa các ký tự hoa trong tập{I, V, X, L, C, D, M}.
Đầu ra
- Trả về một số nguyên dương là giá trị thập phân tương ứng.
Ràng buộc
- 1 ≤ |s| ≤ 15.
- Chuỗi
slà số La Mã hợp lệ, giá trị thập phân nằm trong khoảng [1, 3999].
Ví dụ
Ví dụ 1
- Đầu vào:
"MDCXVII" - Đầu ra:
1617 - Giải thích: Tất cả ký tự đều giảm dần (M > D > C > X > V > I > I), nên ta chỉ việc cộng: 1000 + 500 + 100 + 10 + 5 + 1 + 1 = 1617.
Ví dụ 2
- Đầu vào: