LeetCode 罗马数字与阿拉伯数字的转换
生活随笔
收集整理的這篇文章主要介紹了
LeetCode 罗马数字与阿拉伯数字的转换
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
羅馬數字->阿拉伯數字
Roman to Integer
class Solution { public:int romanToInt(string s) {map<char, int> mymap = {{'I', 1}, {'V', 5}, {'X', 10}, {'L', 50}, {'C', 100}, {'D', 500}, {'M', 1000}};int result = 0, i = 0, temp;for (i = 0; i < s.length() - 1; i++) {temp = mymap[s[i]];if (temp < mymap[s[i + 1]]) {result -= temp;} else {result += temp;}}result += mymap[s[i]];return result;} };阿拉伯數字->羅馬數字
Integer to Roman
class Solution { public:string intToRoman(int num) {// table表存儲十進制數上每個位所表示的羅馬數字// 例如, 365 中 百位上的 3 大小為 table[2][3] = CCCstring table[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 roman_numeral = "";roman_numeral += table[3][num / 1000];num %= 1000;roman_numeral += table[2][num / 100];num %= 100;roman_numeral += table[1][num / 10];num %= 10;roman_numeral += table[0][num];return roman_numeral;} };總結
以上是生活随笔為你收集整理的LeetCode 罗马数字与阿拉伯数字的转换的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2018ACM-ICPC Asia Na
- 下一篇: ZOJ - 1450 Minimal C