罗马数字转整形(LeetCode题目)

来源:互联网 发布:杭州恩牛网络 上市 编辑:程序博客网 时间:2024/06/05 02:56

LeetCode第13题,给定一个罗马数字,将他转换为整形

AC代码

class Solution {  public:      int romanToInt(string s) {          int result = 0,num = 0,pre = INT_MAX;          for(int i = 0; i < s.size(); i++)          {              if(s[i] == 'I') num = 1;              else if(s[i] == 'X') num = 10;              else if(s[i] == 'C') num = 100;              else if(s[i] == 'M') num = 1000;              else if(s[i] == 'V') num = 5;              else if(s[i] == 'L') num = 50;              else if(s[i] == 'D') num = 500;     //乘以2是因为开始已经把左边的数加上了              if(pre < num) result = result + num - 2 * pre;              else result = result + num;                            pre = num;          }          return result;      }  };



阅读全文
1 0
原创粉丝点击