暴力破解(if循环)解决leetcode数字转成罗马数字

这篇具有很好参考价值的文章主要介绍了暴力破解(if循环)解决leetcode数字转成罗马数字。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.题目描述
暴力破解(if循环)解决leetcode数字转成罗马数字,leetcode,算法,python,数据结构
2.解题思路
刚看到这个题目的时候,感觉说的有点啰嗦,其实不难发现,这个题目和之前的给你多少钱,什么2元,5元的,给你一个数字,让你算各种钱币有多少张。无非就是从小到大进行判断,首先判断给定的数字,能容纳多少个最大的,然后依次减少。
3.代码实现文章来源地址https://www.toymoban.com/news/detail-826822.html

class Solution:
    def intToRoman(self, num: int) -> str:
        str1 = ""
        while num != 0:
            print("num",num)
            if int(num / 1000):
                num1 = int(num / 1000)
                for i in range(0, num1):
                    str1 = str1 + "M"
                num = num - num1 * 1000
            elif int(num / 900):
                num1 = int(num / 900)
                for i in range(0, num1):
                    str1 = str1 + "CM"
                num = num - num1 * 900
            elif int(num / 500):
                num1 = int(num / 500)
                for i in range(0, num1):
                    str1 = str1 + "D"
                num = num - num1 * 500
            elif int(num / 400):
                num1 = int(num / 400)
                for i in range(0, num1):
                    str1 = str1 + "CD"
                num = num - num1 * 400
            elif int(num / 100):
                num1 = int(num / 100)
                for i in range(0, num1):
                    str1 = str1 + "C"
                num = num - num1 * 100
            elif int(num / 90):
                num1 = int(num / 90)
                for i in range(0, num1):
                    str1 = str1 + "XC"
                num = num - num1 * 90
            elif int(num / 50):
                num1 = int(num / 50)
                for i in range(0, num1):
                    str1 = str1 + "L"
                num = num - num1 * 50
            elif int(num / 40):
                num1 = int(num / 40)
                for i in range(0, num1):
                    str1 = str1 + "XL"
                num = num - num1 * 40
            elif int(num / 10):
                num1 = int(num / 10)
                for i in range(0, num1):
                    str1 = str1 + "X"
                num = num - num1 * 10
            elif int(num / 9):
                num1 = int(num / 9)
                for i in range(0, num1):
                    str1 = str1 + "IX"
                num = num - num1 * 9

            elif int(num / 5):
                num1 = int(num / 5)
                for i in range(0, num1):
                    str1 = str1 + "V"
                num = num - num1 * 5
            elif int(num / 4):
                num1 = int(num / 4)
                for i in range(0, num1):
                    str1 = str1 + "IV"
                num = num - num1 * 4
            elif int(num / 1):
                num1 = int(num / 1)
                for i in range(0, num1):
                    str1 = str1 + "I"
                num = num - num1 * 1
        return str1
            

                

到了这里,关于暴力破解(if循环)解决leetcode数字转成罗马数字的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Leetcode算法系列| 12. 整数转罗马数字

    罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。 字符 数值 I 1 V 5 X 10 L 50 C 100 D 500 M 1000 例如, 罗马数字 2 写做 II ,即为两个并列的 1。12 写做 XII ,即为 X + II 。 27 写做 XXVII, 即为 XX + V + II 。 通常情况下,罗马数字中小的数字在大的数字的右边。但也存在特例,例如

    2024年02月02日
    浏览(33)
  • Java | Leetcode Java题解之第13题罗马数字转整数

    题目: 题解:

    2024年04月09日
    浏览(34)
  • LeetCode面向运气之Javascript—第13题-罗马数字转整数-99.21%

    给定一个罗马数字,将其转换成整数。 罗马数字包含以下七种字符: I, V, X, L,C,D 和 M 分别代表1,5,10,50,100,500,1000 罗马数字 2 写做 II ,即为两个并列的 1 。12 写做 XII ,即为 X + II 。 27 写做 XXVII, 即为 XX + V + II 。 通常情况下,罗马数字中小的数字在大的数字的右

    2024年02月07日
    浏览(34)
  • 13---罗马数字转整数

    罗马数字包含以下七种字符:  I ,  V ,  X ,  L , C , D  和  M 。 例如, 罗马数字 2 写做  II  ,即为两个并列的 1 。 12 写做  XII  ,即为  X  +  II  。 27 写做   XXVII , 即为  XX  +  V  +  II  。 通常情况下,罗马数字中小的数字在大的数字的右边。但也存在特例,例

    2024年02月12日
    浏览(30)
  • 口令暴力破解--Telnet协议暴力破解、数据库暴力破解与远程桌面暴力破解

    Telnet        Telnet协议是TCP/IP协议族中的一员,是Internet远程登陆服务的标准协议和主要方式。它为用户提供了在本地计算机上完成远程主机工作的能力。要开始一个telnet会话,必须输入用户名和密码来登录服务器。而一般服务器不会对用户名和密码的登录尝试做限制,因此

    2023年04月19日
    浏览(56)
  • 面试经典150题——罗马数字转整数

    罗马数字包含以下七种字符:  I ,  V ,  X ,  L , C , D  和  M 。 例如, 罗马数字 2 写做  II  ,即为两个并列的 1 。 12 写做  XII  ,即为  X  +  II  。 27 写做   XXVII , 即为  XX  +  V  +  II  。 通常情况下,罗马数字中小的数字在大的数字的右边。但也存在特例,例

    2024年02月12日
    浏览(24)
  • LeeCode前端算法基础100题(18)整数转罗马数字

    一、问题详情: 罗马数字包含以下七种字符:  I ,  V ,  X ,  L , C , D  和  M 。 例如, 罗马数字 2 写做  II  ,即为两个并列的 1。12 写做  XII  ,即为  X  +  II  。 27 写做   XXVII , 即为  XX  +  V  +  II  。 通常情况下,罗马数字中小的数字在大的数字的右边。但

    2024年01月18日
    浏览(30)
  • LeeCode前端算法基础100题(17)- 罗马数字转整数

    罗马数字包含以下七种字符:  I ,  V ,  X ,  L , C , D  和  M 。 例如, 罗马数字  2  写做  II  ,即为两个并列的 1 。 12  写做  XII  ,即为  X  +  II  。  27  写做   XXVII , 即为  XX  +  V  +  II  。 通常情况下,罗马数字中小的数字在大的数字的右边。但也存在特

    2024年01月19日
    浏览(35)
  • 安全小课堂丨什么是暴力破解?如何防止暴力破解

    什么是暴力破解? 暴力破解也可称为穷举法、枚举法,是一种比较流行的密码破译方法,也就是将密码进行一一推算直到找出正确的密码为止。比如一个6位并且全部由数字组成的密码,可能有100万种组合,也就是说最多需要尝试100万次才能找到正确的密码,但也有可能尝试

    2024年04月28日
    浏览(36)
  • python暴力破解压缩包密码(python暴力破解zip压缩包)

    简介 : ZIP文件格式是一种数据压缩和文档储存的文件格式,原名Deflate,发明者为菲尔·卡茨(Phil Katz),他于1989年1月公布了该格式的资料。ZIP通常使用后缀名“.zip”,它的MIME格式为application/zip。当前,ZIP格式属于几种主流的压缩格式之一,其竞争者包括RAR格式以及开放源

    2024年02月03日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包