class Solution:
def romanToInt(self, s: str) -> int:
dict = {'I':1, 'V':5, 'X':10, 'L':50, 'C':100, 'D':500, 'M':1000}
ans = 0
size = len(s)
for i in range(size):
if i < (size-1) and dict[s[i]] < dict[s[i+1]]:
ans = ans - dict[s[i]]
else:
ans = ans + dict[s[i]]
return ans
[문제]
로마자로 들어오는 것을 숫자로 변환하고, 규칙에 맞게 계산하기
Symbol Value --> I 1, V 5, X 10, L 50, C 100, D 500, M 1000
[풀이]
4, 9, 40, 90, 400, 900 에 대한 처리가 중요함
스트링 길이만큼 루프를 돌면서, 현재 로마자가 다음 로마자보다 작은지 비교하고,
작으면 현재 로마자를 뺌
크면 현재 로마자를 더함