Description
로마 숫자는 I, V, X, L, C, D, M의 일곱 가지 다른 기호로 표현된다.
기호 : 값
I : 1
V : 5
X : 10
L : 50
C : 100
D : 500
M : 1000
예를 들어, 2는 로마 숫자로 II로 표기되며, 두 개의 1을 더한 것이다. 12는 XII로 표기되며, 간단히 X + II이다. 숫자 27은 XXVII로 표기되며, XX + V + II이다.
로마 숫자는 일반적으로 왼쪽에서 오른쪽으로 가장 큰 것부터 가장 작은 것까지 쓴다. 그러나 4를 나타내는 숫자는 IIII가 아니다. 대신 숫자 4는 IV로 쓴다. 1이 5보다 앞에 있으므로 빼서 4를 만들게 된다. 숫자 9에도 같은 원리가 적용되며, IX로 쓴다. 뺄셈이 사용되는 경우는 다음의 여섯 가지가 있다.
- I는 V(5)와 X(10) 앞에 배치하여 4와 9를 만들 수 있다.
- X는 L(50)과 C(100) 앞에 배치하여 40과 90을 만들 수 있다.
- C는 D(500)와 M(1000) 앞에 배치하여 400과 900을 만들 수 있다.
로마 숫자가 주어질 때 아라비아 숫자인 정수로 변환하는 프로그램을 작성해 보자.
Input
첫 줄애 테스트케이스의 수 t가 입력된다.(1 <= t <= 100)
그 다음 줄부터 테스크케이스 수만큼 로마 숫자가 각 줄에 주어진다.
단, 문자열의 길이는 1이상 15이하이며, 문자열에는 'I', 'V', 'X', 'L', 'C', 'D', 'M'의 7가지 대문자만 포함된다. 문자열을 정수로 변환할 경우 최소값은 1이고 최대값은 3999이다.
Output
각 테스트케이스별로 변환된 정수를 한 줄에 하나씩 출력한다.