本文介绍: 根据规律,减去当前值(代码里是将当前位置数字设为负值,再相加,也是一样的道理)。数字 1 在数字 5 的左边,所表示的数等于大数 5 减小数 1 得到的数值 4。当前位置的元素比下个位置的元素小,就减去当前值,否则加上当前值。请记住在有些情况下,较小的数字会排在较大的数字前面,因此不能仅仅将数字相加。通常情况下,罗马数字中小的数字在大的数字的右边。当前位置的元素比下个位置的元素小,就减去当前值,否则加上当前值。如果用户输入的字母与上述列表中的不同,则打印一个错误。给定一个罗马数字,将其转换成整数。
罗马数字转换器
编写一个程序来转换罗马数字(例如将 MCLX
转换成 1,160
)。 使用映射加载要用于将字符串字符转换为数字的基本罗马数字。 例如,M
将是映射中的键,其值将为 1000
。 使用以下字符串字符映射表列表:
请记住在有些情况下,较小的数字会排在较大的数字前面,因此不能仅仅将数字相加。 例如,数字 MCM
应打印为 1,900
。
代码
列出从1到10的罗马数字,不难发现规律。当前位置的元素比下个位置的元素小,就减去当前值,否则加上当前值。
参考
LeetCode 罗马数字转整数
代码
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。