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 :: python append to 2d array 
Python :: django reverse queryset 
Python :: repeat array along new axis 
Python :: element wise subtraction python list 
Python :: exit python terminal 
Python :: remove env variable python 
Python :: joining pandas dataframes 
Python :: python Correlation matrix of features 
Python :: python - count how many unique in a column 
Python :: python remove duplicate numbers 
Python :: making a basic network scanner using python 
Python :: dropout keras 
Python :: raise exception in python 
Python :: how to check libraries in python 
Python :: beautiful soup get class name 
Python :: python numpy array change axis 
Python :: list comprehension python if 
Python :: python pdf fpdf example 
Python :: drop duplicate index pandas 
Python :: pandas drop row from a list of vlaue 
Python :: how to open a website using python 
Python :: print variable name 
Python :: logging - multiple log file 
Python :: tensorflow bert implementation 
Python :: python if in list multiple 
Python :: move column in pandas 
Python :: python read text file next line 
Python :: pyqt5 keypressevent 
Python :: random library python 
Python :: python read integer from stdin 
ADD CONTENT
Topic
Content
Source link
Name
6+3 =