zoukankan      html  css  js  c++  java
  • Leetcode 13 罗马数字转整数

    • 将每个罗马字母对应的整数写成字典格式,将输入的罗马数字字符串转换成列表形式
    • 一开始想的是怎么将罗马字母的对应位置找出来,利用列表循环相加
    • 后来发现了规律,‘IV'和’I'+'V‘只相差2,以此类推,最后将得到的总和减去多少个x里面的2就好了

      

    def Rome(x):
        dict={
            'I':1,
            'V':5,
            'X':10,
            'L':50,
            'C':100,
            'D':500,
            'M':1000
        }
        z=list(x)
        print(z)
        sum=0
        for i in z:
            sum=sum+dict[i]
        if 'IV' in x or 'IX'in x:
            num = x.count('IV')+x.count('IX')
            sum = sum - num * 2
        if 'XL' in x or 'XC'in x:
            num=x.count('XL')+x.count('XC')
            sum=sum-num*20
        if 'CD' in x or 'CM'in x:
            num=x.count('CD')+x.count('CM')
            sum=sum-num*200
        return sum
  • 相关阅读:
    1.MySql安装
    struts文件上传、文件下载
    Java内存模型
    虚拟机类加载机制
    JAVA内存管理
    算法
    POI
    SSH项目(1)
    classpath路径和properties
    AngularJS路由实现单页面跳转
  • 原文地址:https://www.cnblogs.com/Aprilnn/p/9196100.html
Copyright © 2011-2022 走看看