12345678910111213141516171819202122232425 |
- package main
- var mRoman = map[rune]int{
- 'I': 1,
- 'V': 5,
- 'X': 10,
- 'L': 50,
- 'C': 100,
- 'D': 500,
- 'M': 1000,
- }
- func romanToInt(s string) int {
- res := 0
- last := 1000
- for _, v := range s {
- // IV --> V - I
- if last < mRoman[v] {
- res -= 2 * last
- }
- res += mRoman[v]
- last = mRoman[v]
- }
- return res
- }
|