标签:
Given an integer, convert it to a roman numeral.
Input is guaranteed to be within the range from 1 to 3999.
题意:将阿拉伯数字转换为罗马数字表示
思路:首先了解罗马数字的表示,然后就是从大到小找符合的数字了
class Solution { public: string intToRoman(int num) { string ans = ""; string dit[] = {"M","CM","D","CD","C","XC","L","XL","X","IX","V","IV","I"}; int val[] = {1000, 900, 500, 400, 100, 90, 50, 40, 10, 9, 5, 4, 1}; for (int i = 0; num > 0; i++) { while (num >= val[i]) { num -= val[i]; ans += dit[i]; } } return ans; } };
标签:
原文地址:http://blog.csdn.net/u011345136/article/details/42873247