96. Integer to Roman

2024-05-12 01:08
文章标签 integer 96 roman

本文主要是介绍96. Integer to Roman,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Given an integer, convert it to a roman numeral.

Input is guaranteed to be within the range from 1 to 3999.

分析:

将一个数字转化为罗马字符串表示。

大数左边加上小数就是把大数减去这个小数."M","CM","D","CD","C","XC","L","XL","X","IX","V","IV","I"分别对应1000,900,500,400,100,90,50,40,10,9,5,4,1。以最左边为最大的字符为原则,从大到小判断num的值。

/*** 将一个数字转化为罗马字符串表示。* 大数左边加上小数就是把大数减去这个小数.I(1),V(5),X(10),L(50),C(100),D(500),M(1000)。* 以最左边为最大的字符为原则,从大到小判断num的值。*/public String intToRoman(int num) {StringBuffer sb = new StringBuffer();String symbol[]={"M","CM","D","CD","C","XC","L","XL","X","IX","V","IV","I"};    int value[]= {1000,900,500,400,100,90,50,40,10,9,5,4,1}; int i=0;while(num!=0){while(num>=value[i]){/*先从罗马数字可以表示的最大值开始依次往后换算*/sb.append(symbol[i]);num=num-value[i];}i++;}return new String(sb);}


这篇关于96. Integer to Roman的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/981174

相关文章

代码随想录算法训练营第三十九天|62.不同路径 63. 不同路径 II 343.整数拆分 96.不同的二叉搜索树

LeetCode 62.不同路径 题目链接:62.不同路径 踩坑:二维的vector数组需要初始化,否则会报错访问空指针 思路: 确定动态数组的含义:dp[i][j]:到达(i,j)有多少条路经递推公式:dp[i][j] = dp[i-1][j] + dp[i][j-1]初始化动态数组:dp[0][0] = 1遍历顺序:从左到右,从上到下 代码: class Solution {pu

泛型和Integer小结

泛型在Java.util里面找:也可对其他你使用的函数进行查阅 如下:只要函数后面跟有尖括号<>,你都可以拿过来使用泛型     注意:用到集合时尽量使用泛型       int与Integer   integer这个不是关键字,是java的一个类。也就是int的包装类。int是基本数据类型,integer是引用类型,包含很多属性和方法,而int只是一个值,没有其他的任何

动态规划02(Leetcode62、63、343、96)

参考资料: https://programmercarl.com/0062.%E4%B8%8D%E5%90%8C%E8%B7%AF%E5%BE%84.html 62. 不同路径 题目描述: 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。

Integer能表示十进制的多少位?

Java 提供两种不同的类型:引用类型和原始类型(或内置类型)。Int是java的原始数据类型,Integer是java为int提供的封装类。在32位机器上,能表示的最大值是2^32 = 4 294 967 296。 111111111111超过了最大表示范围,所以会报错。   超过了Integer的存值范围,Integer存值的范围是 -2的31次方 到 2的31次方-1 的常量   I

Query failed with error code 96 and error message 'Executor error during find command: OperationFail

Query failed with error code 96 and error message 'Executor error during find command: OperationFailed: Sort operation used more than the maximum 33554432 bytes of RAM. Add an index, or specify a smal

Integer 类型数据比较相等的那些坑

public void testInter() {Integer a = new Integer(200);Integer b = new Integer(200);Integer c = 200;Integer e = 200;int d = 200;Object o=200;System.out.println("基本类型和数字常量 ==判断"+(o==c));System.out.pr

String与Integer的相互转化

一、Integer转String //方法一:Integer类的静态方法toString()Integer a = 2;String str = Integer.toString(a)//方法二:Integer类的成员方法toString()Integer a = 2;String str = a.toString();//方法三:String类的静态方法valueOf()Intege

(VB.Net)Integer转 Byte数组

1、Integer转单个字节 Public Function iByte(ByVal i As Integer) As ByteDim b() As Byte = BitConverter.GetBytes(i)Return b(0)End Function 2、Integer转双字节 '低字节在前,高字节在后Public Function iByte2(ByVal i As Integ

java int 与 integer的区别

int与integer的区别从大的方面来说就是基本数据类型与其包装类的区别: int 是基本类型,直接存数值,而integer是对象,用一个引用指向这个对象 1.Java 中的数据类型分为基本数据类型和复杂数据类型 int 是前者而integer 是后者(也就是一个类);因此在类进行初始化时int类的变量初始为0.而Integer的变量则初始化为null. 2.初始化时:

[leetcode]397. Integer Replacement

[leetcode]397. Integer Replacement第四次周赛第二题 Given a positive integer n and you can do operations as follow:If n is even, replace n with n/2.If n is odd, you can replace n with either n + 1 or n - 1.