文章标题

来源:互联网 发布:mac cd命令进入文件夹 编辑:程序博客网 时间:2024/06/07 21:48

Python 罗马数字转换为普通的阿拉伯数字

在网上看了一些罗马数字转换阿拉伯数字的程序,直观感觉,太长了,自己也来个版本吧,不喜勿喷,欢迎交流。

def solution(roman):    res = 0    d ={'M':1000,        'V':5,        'X':10,        'L':50,        'C':100,        'D':500}    for i in range(len(roman)-1):        if d[roman[i+1]] <= d[roman[i]]:            res += d[roman[i]]        else:            res += -d[roman[i]]    return res+d[roman[-1]]

具体思路:对于罗马数字来说,显然,如果下一个罗马字母代表的数值大于当前罗马字母代表数值的话,则将当前罗马字母代表数字取反即可,例如:”MCD“ == 1400

‘M’+(-‘C’)+D = 1000 - 100 +500 = 1400

后期会陆续更新一些个人编写的小算法,题目大多来源codewars,欢迎大家共同讨论。

0 0
原创粉丝点击