로마인은 알파벳 일곱 글자로 수를 나타냈다. 각 글자와 대응하는 값은 다음과 같다.
- I = 1
- V = 5
- X = 10
- L = 50
- C = 100
- D = 500
- M = 1000
이 일곱 글자와 다음 규칙을 이용하면 원하는 모든 수를 적을 수 있다.
- 덧셈 규칙: 글자들이 왼쪽에서 오른쪽으로 값이 커지지 않는 순서로 놓이면, 각 값을 모두 더한다. 예를 들어 MMCLVII는 1000 + 1000 + 100 + 50 + 5 + 1 + 1 = 2157이다.
- 뺄셈 규칙: 이렇게만 적으면 로마 숫자가 너무 길어지므로 뺄셈 규칙도 있다. 어떤 글자의 값이 바로 오른쪽 글자의 값보다 작으면, 그 왼쪽 글자의 값을 뺀다. 예를 들어 MCMXIV는 1000 − 100 + 1000 + 10 − 1 + 5 = 1914이다.
- I, X, C는 네 번 이상 연달아 쓸 수 없다. 즉 IIII는 더 짧은 IV로 바꿔야 한다.
- V, L, D는 두 번 이상 연달아 쓸 수 없다.
- M은 개수 제한이 없다.
- 뺄셈 규칙은 바로 왼쪽 글자 하나에만 적용된다. 즉 IV는 4이지만, IIV는 3이 아니며 올바른 로마 숫자도 아니다.
- 뺄셈 규칙에서 왼쪽에 올 수 있는 글자는 I, X, C뿐이다.
- 뺄셈 규칙에서 I는 V나 X 앞에만, X는 L이나 C 앞에만, C는 D나 M 앞에만 올 수 있다.
이 규칙을 만족하는 로마 숫자가 주어질 때, 이를 10진수 정수로 바꾸어라.