算法日记_20180905

  • A+
所属分类:纵乱弹
摘要

LeetCode 13. Roman to Integer思路:如果有IV, IX,XL,XC, CD, CM这六种左减情况出现,从sum中减去相应的数.比如I + V 应该是6,IV …

广告也精彩

LeetCode 13. Roman to Integer

思路:如果有IV, IX,XL,XC, CD, CM这六种左减情况出现,从sum中减去相应的数。比如I + V 应该是6,IV 却是4,所以减二。之后再根据MDCLXVI, 加相应的数。

  1. public int romanToInt(String s) {

  2.        int sum = 0;

  3.        if(s.indexOf("IV")!=-1){sum-=2;}

  4.        if(s.indexOf("IX")!=-1){sum-=2;}

  5.        if(s.indexOf("XL")!=-1){sum-=20;}

  6.        if(s.indexOf("XC")!=-1){sum-=20;}

  7.        if(s.indexOf("CD")!=-1){sum-=200;}

  8.        if(s.indexOf("CM")!=-1){sum-=200;}

  9.        char c[]=s.toCharArray();

  10.        for(int count = 0; count <= s.length() - 1; count++){

  11.            if(c[count]=='M') sum+=1000;

  12.            if(c[count]=='D') sum+=500;

  13.            if(c[count]=='C') sum+=100;

  14.            if(c[count]=='L') sum+=50;

  15.            if(c[count]=='X') sum+=10;

  16.            if(c[count]=='V') sum+=5;

  17.            if(c[count]=='I') sum+=1;

  18.        }

  19.        return sum;

  20.    }

  • 微信
  • 扫一扫
  • weinxin
  • 微信公众号
  • 扫一扫
  • weinxin
广告也精彩
iPhone 配件
印花修身无袖连衣裙
Y40 便携头戴式耳机
一步裙
广告也精彩

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: