美文网首页
罗马数字转整数

罗马数字转整数

作者: Newzer | 来源:发表于2022-07-18 11:22 被阅读0次
            $str = "MCMXCIV";
        print_r(romanToInt($str));
        function romanToInt($s) {
            $arr = array(
                "I"  => 1,
                "V"  => 5,
                "X"  => 10,
                "L"  => 50,
                "C"  => 100,
                "D"  => 500,
                "M"  => 1000
            );
            $res = 0;
            $len = strlen($s);
    
            for ($i = 0; $i < $len; $i ++) {
                if (isset($arr[$s[$i]])) {
                    if (!isset($arr[$s[$i+1]]) || $arr[$s[$i]] >= $arr[$s[$i+1]]) {
                        $res += $arr[$s[$i]];
                    }else {
                        $res -= $arr[$s[$i]];
                    }
                }
            }
            return $res;
        }
    

    相关文章

      网友评论

          本文标题:罗马数字转整数

          本文链接:https://www.haomeiwen.com/subject/peddirtx.html