码迷,mamicode.com
首页 > 其他好文 > 详细

【leetcode】罗马数字转整数

时间:2020-09-17 17:09:44      阅读:20      评论:0      收藏:0      [点我收藏+]

标签:repeat   important   ash   ack   color   har   none   hash   ++   

 

int romanToInt(char * s){
    int* hash = (int*)calloc(26,sizeof(int));
    hash[I-65] = 1;
    hash[V-65] = 5;
    hash[X-65] = 10;
    hash[L-65] = 50;
    hash[C-65] = 100;
    hash[D-65] = 500;
    hash[M-65] = 1000;
    int sum=0;
    for (int i=0; i<strlen(s)-1; i++)
    {
        sum+=(hash[s[i]-65] >= hash[s[i+1]-65])?hash[s[i]-65]:-hash[s[i]-65];
    }
    sum+=hash[s[strlen(s)-1]-65];
    return sum;
}

 

【leetcode】罗马数字转整数

标签:repeat   important   ash   ack   color   har   none   hash   ++   

原文地址:https://www.cnblogs.com/ganxiang/p/13626100.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!