Search⌘ K
AI Features

Solution: Roman to Integer

Explore how to convert Roman numerals into integers using a hash map-based algorithm. Learn the additive and subtractive principles of Roman numerals, use dictionary lookups for constant time value retrieval, and efficiently process numeric strings to implement a clean, linear-time solution.

Statement

Given a string, s, representing a Roman numeral, return the integer value of the Roman numeral.

Seven different symbols represent Roman numerals:

Symbol

Value

I

1

V

5

X

10

L

50

C

100

D

500

M

1000

So, in Roman numerals, 22 is written as II\text {II}, which is simply two 11s added together. The number1212 is written as XII\text{XII}, which is simply X+II\text{X} + \text{II}. The number 2727 is written as XXVII\text{XXVII}, which breaks down into XX+V+II\text{XX} + \text{V} + \text{II}.

Roman numerals are usually written from largest to smallest from left to right (X\text{X}) comes first, and then I\text I for 1212). However, there are six cases where a smaller numeral is placed before a larger one to indicate subtraction. For example, the number 44 is written as IV\text{IV}, because ...