zoukankan      html  css  js  c++  java
  • 【leetcode】8 integer to roman

    整数转换为罗马字符

    注意事项:

    1 将常用罗马字符保存咋二维数组中,供后期映射查询。存放规则:各位、十位等各一行

    2 每次从数字的个位映射,循环直至为0

    3 字符串result链接时注意顺序,与普通整数连接顺序不同

    class Solution {

    public:     char*  roman[4][10] = {            

      {"", "I", "II", "III", "IV", "V", "VI", "VII", "VIII", "IX"},              

     {"", "X", "XX", "XXX", "XL", "L", "LX", "LXX", "LXXX", "XC"},              

    {"", "C", "CC", "CCC", "CD", "D", "DC", "DCC", "DCCC", "CM"},              

    {"", "M", "MM", "MMM","","","","","",""}             }; 

        string intToRoman(int num) {        

             int rest=0;         

             int digit=0;        

             string result="";        

             while(num){            

                     rest=num%10;            

                     result=roman[digit][rest]+result;   //注意此处顺序,不能写result+=   roman[digit][rest];因为这是字符串处理,不是整数处理。      

                     digit++;            

                    num/=10;        

                    }        

                    return result;    

                  } };

  • 相关阅读:
    【原】 POJ 1012 Joseph 约瑟夫 解题报告
    【原】 POJ 1001 Exponentiation 大整数乘法 解题报告
    POJ——1517
    毕业了,校园里走走看看——华中科技大学
    毕业答辩后
    CV编程常用的获取鼠标圈定区域的方法
    送走了GB
    POJ——2546
    奥巴马在YY21#524
    POJ——3517
  • 原文地址:https://www.cnblogs.com/wygyxrssxz/p/4493912.html
Copyright © 2011-2022 走看看