Integer to Roman

来源:互联网 发布:淘宝无理由退货规则 编辑:程序博客网 时间:2024/06/07 02:14

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 str;          string symbol[]={"M","CM","D","CD","C","XC","L","XL","X","IX","V","IV","I"};          int value[]=    {1000,900,500,400, 100, 90,  50, 40,  10, 9,   5,  4,   1};         for(int i=0;num!=0;++i) //value[i]的数值从高到低,循环条件是传入的数num不为0        {            while(num>=value[i])            {                num-=value[i];                str+=symbol[i];//字符串不断的相加            }        }        return str;    }};
0 0
原创粉丝点击