Development/Algorithm
[LeetCode] Roman to Integer
동스토리
2021. 8. 8. 15:42
반응형
안녕하세요.
LeetCode 13번 Roman to Integer 문제풀이 하겠습니다.
https://leetcode.com/problems/roman-to-integer/
Roman to Integer - LeetCode
Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview.
leetcode.com
[문제]
[TestCase]
[해설]
- 리스트를 만든다
- s의 첫번째 인덱스와 다음 인덱스를 비교해가면서
s[i] >= s[i+1] 일 경우 인덱스를 더해주고
s[i] < s[i+1] 일 경우 인덱스를 빼준다
- 최종적으로 마지막 인덱스를 더해준다.
[코드]
class Solution:
def romanToInt(self, s: str) -> int:
R_list = {'I': 1, 'V': 5, 'X': 10, 'L': 50, 'C': 100, 'D': 500, 'M': 1000}
result =0
for i in range(len(s)-1):
num = R_list[s[i]]
nextnum = R_list[s[i+1]]
#s[i] >= s[i+1]
if num>=nextnum:
result +=num
#s[i] < s[i+1]
else:
result -=num
# s의 마지막 인덱스 더하기
result += R_list[s[len(s)-1]]
return result
감사합니다.
반응형