Menu
CoddyTech

Roman to Integer

로마 숫자는 일곱 개의 기호를 사용합니다. I = 1, V = 5, X = 10, L = 50, C = 100, D = 500, M = 1000입니다. 기호는 가장 큰 것부터 가장 작은 것 순서로 쓰고 더합니다. 단, 작은 기호가 먼저 나오고 큰 기호에서 그 값을 빼는 여섯 가지 감산 조합은 예외입니다. IV = 4, IX = 9, XL = 40, XC = 90, CD = 400, CM = 900입니다.

유효한 로마 숫자 s가 주어집니다. 이 숫자가 나타내는 정수를 반환하세요.

함수

romanToInt(s: string) → integer
sstring
대문자로 된 유효한 로마 숫자
반환값integer
숫자의 값, 1부터 3999까지

제약 조건

  • 1 ≤ s.length ≤ 15
  • s에는 I, V, X, L, C, D 및 M 문자만 포함됩니다.
  • s는 1부터 3999까지의 값을 나타내는 유효한 로마 숫자입니다.

예제

입력
s = "XXVII"
출력
27
설명
XX는 10 + 10이고, V는 5이며 II는 1 + 1이므로, 합계는 27입니다. 어떤 기호 뒤에도 더 큰 기호가 오지 않으므로 모든 기호를 더합니다.

lock icon제출 시 숨은 테스트 +22개

challenge icon

후속 질문

1부터 3999까지의 정수를 로마 숫자로 바꾸는 역방향 코드를 작성할 수 있나요?

코드 초기화
def romanToInt(s):
    # 여기에 코드를 작성하세요
테스트 케이스

케이스 1

케이스 2

케이스 3

입력

s = "XXVII"

기대값

27