leetcode算法题第12题:整数转罗马数字
题目:
解题思路:模拟
根据罗马数字的唯一表示法,为了表示一个给定的整数 num,我们寻找不超过num 的最大符号值,将 num 减去该符号值,然后继续寻找不超过 num 的最大符号值,将该符号拼接在上一个找到的符号之后,循环直至num 为 0。最后得到的字符串即为num 的罗马数字表示。
编程时,可以建立一个数值-符号对的列表 valueSymbols,按数值从大到小排列。遍历 valueSymbols 中的每个数值-符号对,若当前数值value 不超过num,则从 num 中不断减去value,直至num 小于 value,然后遍历下一个数值-符号对。若遍历中num 为 0 则跳出循环。
代码: