罗马数字有一个特征:两个相邻的字符,如果左边比右边大,那么两个数应该相加,如果左边比右边小,那么这两个数应该相减。根据这个特点,可以写出下面的计算过程:
for (let i = 0, c, n; i < N; i++) {
c = roman[s[i]]
n = roman[s[i + 1]]
result += c < n ? -c : c
}
依次将结果加上或减去罗马数的值,就将整个罗马数转换为了数字。
Name | Name | Last commit date | ||
---|---|---|---|---|
parent directory.. | ||||
罗马数字有一个特征:两个相邻的字符,如果左边比右边大,那么两个数应该相加,如果左边比右边小,那么这两个数应该相减。根据这个特点,可以写出下面的计算过程:
for (let i = 0, c, n; i < N; i++) {
c = roman[s[i]]
n = roman[s[i + 1]]
result += c < n ? -c : c
}
依次将结果加上或减去罗马数的值,就将整个罗马数转换为了数字。