Search
 
SCRIPT & CODE EXAMPLE
 

PYTHON

Python Roman to Integer

class Solution:
    def romanToInt(self, s):
 
        values = {'I': 1, 'V': 5, 'X': 10, 'L' : 50, 'C' : 100, 'D' : 500, 'M' : 1000}   
        result = 0
        for i in range(len(s)):
            if i + 1 < len(s) and values[s[i]] < values[s[i + 1]] : # if current item is not the last item on the string
                                                                    # and current item's value is smaller than next item's value 
                result = result - values[s[i]]                      # then subtract current item's value from result
            else:
                result = result + values[s[i]]                      # otherwise add current item's value to result
        return result

Task = Solution()
print(Task.romanToInt("III"))
print(Task.romanToInt("LVIII"))
print(Task.romanToInt("MCMXCIV"))
Comment

python roman to integer

def roman_to_int(roman:str) -> int:
    romans = {
        "I": 1,
        "V": 5,
        "X": 10,
        "L": 50,
        "C": 100,
        "D": 500,
        "M": 1000
    }
    result = 0
    
    # Single digit number
    if len(roman) < 2:
        return romans[roman.upper()]
      
    # Iterate the string only once -> O(n)
    for i in range(len(roman)-1):
        current_num = romans[roman[i].upper()]
        next_num = romans[roman[i+1].upper()]
        if current_num < next_num:
            result -= current_num
        else:
            result += current_num
    else:  # Add the last number
        result += next_num

    return result
Comment

roman to integer python

def romanToInt(rm_letter):
    roman = {'I':1,'V':5,'X':10,'L':50,'C':100,'D':500,'M':1000,'IV':4,'IX':9,'XL':40,'XC':90,'CD':400,'CM':900}
    i = 0
    num = 0
    while i < len(rm_letter):
        if i+1<len(rm_letter) and rm_letter[i:i+2] in roman:
            num+=roman[rm_letter[i:i+2]]
            i+=2
        else:

            num+=roman[rm_letter[i]]
            i+=1
    return num

roman = input("Enter roman letter: ").upper()
roman=romanToInt(roman)
print(roman)
Comment

Roman to integer with python

def romanToInt(self, s: str) -> int:
    roman = {"I": 1, "V": 5, "X": 10, "L": 50, "C": 100, "D": 500, "M": 1000}
    result = 0

    for i in range(len(s)):
        if i + 1 < len(s) and roman[s[i]] < roman[s[i+1]]:
            result -= roman[s[i]]
        else: 
            result += roman[s[i]]
    return result
Comment

Python Roman to Integer method 2

class Solution:
    def romanToInt(self, s):
 
        values = {'I': 1, 'V': 5, 'X': 10, 'L' : 50, 'C' : 100, 'D' : 500, 'M' : 1000}   
        result = 0
        for i in range(len(s)):
            if i + 1 == len(s) or values[s[i]] >= values[s[i + 1]] : # if current item is not the last item on the string
                                                                    # or current item's value is greater than or equal to next item's value 
                result = result + values[s[i]]                      # then add current item's value from result
            else:
                result = result - values[s[i]]                      # otherwise subtract current item's value from result
        return result

Task = Solution()
print(Task.romanToInt("III"))
print(Task.romanToInt("LVIII"))
print(Task.romanToInt("MCMXCIV"))
Comment

PREVIOUS NEXT
Code Example
Python :: how to reverse array in python 
Python :: python string startswith regex 
Python :: python optional parameters 
Python :: sqlalchemy filter between dates 
Python :: print font size python 
Python :: python copy to clipboard command 
Python :: pyqt5 qtreewidgetitem enable drop drag 
Python :: audioplayer python 
Python :: string print in pattern in python 
Python :: pow python 
Python :: custom position for axis matplotlib 
Python :: find min and max from dataframe column 
Python :: builtwith python 
Python :: new dataframe based on certain row conditions 
Python :: django environment variables 
Python :: with open as file python 
Python :: code fibonacci python 
Python :: python while true loop 
Python :: double char python 
Python :: how to concatenate a string with int in python 
Python :: python iterating through a string 
Python :: python ordereddict 
Python :: python variable 
Python :: 3d array into 2d array python 
Python :: python generate list 
Python :: python split lines 
Python :: looping through nested dictionary to nth 
Python :: sum with conditional python 
Python :: How to send Email verification codes to user in Firebase using Python 
Python :: get multiple inputs in python using map 
ADD CONTENT
Topic
Content
Source link
Name
9+8 =