Roman to Integer

[原题链接-E] (https://leetcode.com/problems/roman--to-integer/)

Example
罗马转数字问题

时间复杂度: O(N)- 空间复杂度: O(1)

这个题关键点在于穷举

print_r(test(VI));

function test($num) {
    $lookup = [
            'I': 1,
            'V': 5,
            'X': 10,
            'L': 50,
            'C': 100,
            'D': 500,
            'M': 1000
        ];
        
    $roman = '';
    
    for ($i = 0; $i < mb_strlen($num); $i++) {
        if ($i>0 && $lookup[$i] > $lookup[$i-1]) {
            $roman += $lookup[$i] - 2 * $lookup[$i - 1];
        } else {
            $roman += $lookup[$i];
        }
    }
    
    return $roman;
}    

你可能感兴趣的:(Roman to Integer)