在LeetCode上刷到一道题,题目是罗马数字转整数。题目介绍里,写出了罗马数字包含的七种字符: I
, V
, X
, L
,C
,D
和 M
。
字符 数值
I 1
V 5
X 10
L 50
C 100
D 500
M 1000
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/roman-to-integer
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
罗马数字我也不陌生,看到这其中字符时我就想怎么使用罗马字符写出 1 到 10 ,下面是我写的:
I-1 II-2 III-3 IIII-4 V-5 VI-6 VII -7 VIII-8 VIIII-9 X-10
正确的写法是:
Ⅰ Ⅱ Ⅲ Ⅳ Ⅴ Ⅵ Ⅶ Ⅷ Ⅸ Ⅹ
(大家可以通过拼音打出来,比如Ⅰ就输入yi,微软输入法都可以的)
到了Ⅳ,Ⅰ(小的)在左边,表示这两个数做减法,大的减去小的。Ⅵ中,小的在右边,表示这两个数做加法,相加得到。比较有意思。在阿拉伯数字传入西方之前,西方使用了罗马数字一千多年。注意,罗马数字中没有0。