Integer to Roman

Leetcode || Roman to Integer package pack; /* * 从前向后遍历罗马数字,如果某个数比前一个数小,则加上该数。 * 反之,减去前一个数的两倍然后加上该数。 */ class Solution { private int getInteger(char ch) { switch(ch) { case 'I' : return 1; c 阅读详情

Given an integer, convert it to a roman numeral.

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

没啥算法技术含量,搞明白Roman Integer的构造,按照千位,百位,十位和个位的数字来加一加就行了。

public class Solution {
    public String intToRoman(int num) {
        StringBuilder builder = new StringBuilder();
        int thousand = num / 1000;
        for(int i = 1; i <= thousand; i++){
            builder.append("M");
        }
        
        int hundred = num % 1000 / 100;
        //900
        if(hundred == 9)
            builder.append("CM");
        //0~400
        else if(hundred < 4){
            for(int i = 1; i <= hundred; i++)
                builder.append("C");
        }
        //400
        else if(hundred == 4){
            builder.append("CD");
        }
        //500~800
        else{
            builder.append("D");
            for(int i = 6; i <= hundred; i++)
                builder.append("C");
        }
        
        int tens = num % 100 / 10;
        //90
        if(tens == 9)
            builder.append("XC");
        //0~40
        else if(tens < 4){
            for(int i = 1; i <= tens; i++)
                builder.append("X");
        }
        //40
        else if(tens == 4){
            builder.append("XL");
        }
        //50~80
        else{
            builder.append("L");
            for(int i = 6; i <= tens; i++)
                builder.append("X");
        }
        
        int ones = num % 10;
         //9
        if(ones == 9)
            builder.append("IX");
        //0~4
        else if(ones < 4){
            for(int i = 1; i <= ones; i++)
                builder.append("I");
        }
        //4
        else if(ones == 4){
            builder.append("IV");
        }
        //5~8
        else{
            builder.append("V");
            for(int i = 6; i <= ones; i++)
                builder.append("I");
        }
        return builder.toString();
    }
}



利用绝对式编码器实现电机无限旋转的配置与优化 本文详细解析了如何利用绝对式编码器实现电机的无限旋转功能。通过切换驱动器编码器工作模式、精确计算逻辑位置范围等关键配置步骤,解决了传统方案在多圈计数溢出时的定位难题。该方案无需硬件改造,适用于大型回转台、连续供料系统等需要大范围连续绝对定位的自动化场景。 阅读详情

相关推荐

【参数不确定】敏感性分析(sensitivity analysis)

【运筹学】灵敏性分析

羊肉蛋花汤的博客 14万+

LeetCode 12 Integer to Roman题解

题目地址: https://leetcode.com/problems/integer-to-roman/ 题目: Given an integer, convert it to a roman numeral. 给定一个数,将它转化为罗马数值。 Input is guaranteed to be within the range from 1 to 3999.

赞美月亮的专栏 634

SCCM部署教程:(3)SCCM安装

这两则摘要介绍了WSUS和SCCM的安装步骤: WSUS安装:通过服务器管理器添加"Windows服务器更新服务"角色,选择SQL数据库并指定安装路径,验证数据库连接后完成安装。 SCCM安装:先运行预检工具Prereqchk.exe,选择主站点安装类型,配置语言、站点代码和名称,设置SQL数据库连接参数(保留默认端口4022),选择通信方法和系统角色(管理点和分发点),最后完成约1小时的安装过程。 两则安装指南都强调要确保数据库配置与前期准备一致,并提供了关键配置选项的说明。

小V锅的专栏 893

LeetCode | Roman to Integer

13. Roman to Integer Description Roman numerals are represented by seven different symbols: I, V, X, L, C, D and M. Symbol Value I 1 V 5 X 10 L 5...

Karmen199x的博客 230

GEE:基于自定义的年度时序数据集进行LandTrendr变化检测

本文介绍了使用年度时序数据进行LandTrendr变化检测的方法,包括核心函数调用、参数设置和结果可视化。通过筛选参数(年份、变化幅度和持续时间)对结果进行过滤,输出变化年份、变化幅度和持续时间。代码提供了完整的处理流程,包括数据输入、LandTrendr算法运行、结果筛选与可视化,并支持结果导出。适用于基于Google Earth Engine平台的地表变化检测分析。

养乐多的博客 751

【绝对要收藏-优秀论文范文】高项-度量绩效域

摘要:本文基于某水库数字孪生平台建设项目(2022.9-2023.5,645.97万元)的管理实践,从信息系统度量绩效域角度展开论述。项目构建了包含防洪调度等6大子系统的数字平台,实现洪水"四预"功能。重点分析了度量绩效域的五大要点:制定有效指标(如成本±8%偏差阈值)、多维数据采集、预警临界值设定、基于趋势的主动干预和持续改进机制。特别阐述了绩效问题的诊断方法,包括设备采购全周期成本分析、阶段性成本报告制度等。项目状态展示采用三维可视化看板,集成进度、成本、质量等多维度实时数据,最终实

xylllamm的博客 345

[LeetCode] Roman to Integer and Integer to Roman

羅馬數字共有7個,即I(1)、V(5)、X(10)、L(50)、C(100)、D(500)和M(1000)。按照下述的規則可以表示任意正整數。需要注意的是罗马数字中没有“0”,與進位制無關。一般認為羅馬數字只用來記數,而不作演算。 重複數次:一個羅馬數字重複幾次,就表示這個數的幾倍。 右加左減: 在較大的羅馬數字的右邊記上較小的羅馬數字,表示大數字加小數字。在較大的羅馬數字的左邊

Jesus in my place 5906

企业AI数据资产评估的自动化工具:AI应用架构师的使用指南

在AI驱动的企业数字化转型中,数据资产是支撑模型训练、业务决策的核心燃料。然而,80%的AI项目失败源于数据问题——低质量数据导致模型偏差、未评估的风险引发合规危机、价值不明确的数据浪费资源。手动数据资产评估效率低、易出错,无法满足规模化AI应用需求。本文将以AI应用架构师的视角,拆解企业数据资产评估的核心逻辑,用"餐厅选食材"的生活化比喻解释复杂概念,结合自动化工具的技术原理与实战案例,教你如何从0到1搭建数据资产评估体系。无论是数据质量检测、价值量化还是风险防控,你都能找到可落地的工具方案与实践步骤。

2502_91592937的博客 1629

Roman to Integer/Integer to Roman

1 Roman to IntegerGiven a roman numeral, convert it to an integer. Input is guaranteed to be within the range from 1 to 3999.首先,想做出这道题得了解一下罗马数字。罗马数字有如下符号: I(1) V(5) X(10) L(50) C(100) D(500) M(100

Dustin_CDS的博客 555

Arduino ESP8266自定义配置分区表

ESP8266自定义分区表配置 随着项目的不断开发,项目文件也不断在增大,在没有考虑更换主硬件的条件下,最大开发利用有限资源势在必行,所以今天带来ESP8266自定义分区表的配置。 我这里以版本:2.7.4版本为例,后面的版本也是支持的。 注意:自定义分区表特别要注意和你的硬件相对应,flash芯片的大小决定这个分区是否有效,否则有意想不到的事情发现。 自定义分区表的几个重要参数 /* Flash Split for 4M chips */ /* sketch @0x40200000 (~1019K

perseverance51博客 1725

C# Winform使用Monaco打造代码编辑器

本文介绍了如何在Winform项目中集成Monaco代码编辑器。通过NuGet安装WebView2控件,创建monaco-editor.html文件加载编辑器,并实现与C#代码的交互。关键步骤包括:初始化WebView2环境、配置Monaco编辑器参数、设置代码变更监听事件以及处理C#与JavaScript之间的通信。注意事项提示了依赖库安装问题的解决方法。该方案实现了功能完整的代码编辑器,支持代码自动保存和实时显示功能。

遇见--专栏 346

【LeetCode】Integer to Roman 和 Roman to Integer 解题报告

【题目】 Given a roman numeral, convert it to an integer. Or, Given an integer, convert it to a roman numeral. Input is guaranteed to be within the range from 1 to 3999. 【罗马数字】 1~9: {"I", "II", "III

跳出温水的青蛙 2万+

【ATC/DTC方法第一期】经典平均/昼夜温度周期ATC/DTC方法介绍(含Python代码实现)

【ATC/DTC方法第一期】经典平均/昼夜温度周期ATC/DTC方法介绍(含Python代码实现)

WW、forever的博客 484

leetcode - Roman to Integer 与 Integer to Roman

leetcode题目汇集  — Roman与Integer之间的互换 参考网址https://zh.wikipedia.org/wiki/%E7%BD%97%E9%A9%AC%E6%95%B0%E5%AD%97 Roman To Integer 搬运维基百科对罗马数字性质的介绍: 右加左减: 在较大的罗马数字的右边记上较小的罗马数字,表示大数字加小数字。在较大的罗马数字的左边

知足常乐,知行合一 481

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

LeetCode--Roman to Integer

Roman to Integer 1. 题目 Roman numerals are represented by seven different symbols:I,V,X,L,C,DandM. Symbol Value I 1 V 5 X 10 L 50 C ...

Vilin的博客 320

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

Roman to Integer

罗马数字向十进制数字的转换。

不积跬步无以至千里 434

[LeetCode]Roman to Integer

[LeetCode]Roman to Integer

个人技术博客 929

LeetCode之Integer to Roman, Roman to Integer

LeetCode之Integer to Roman, Roman to Integer

Da Cheng Xu 的专栏 1517

【LeetCode算法练习(C++)】Integer to Roman

题目: Given an integer, convert it to a roman numeral. Input is guaranteed to be within the range from 1 to 3999. ps: I = 1; V = 5; X = 10; L = 50; C = 100; D = 500; M = 1000;链接:Integer to Rom

sst2230879的博客 238

LeetCode之Roman to Integer

Given a roman numeral, convert it to an integer. Input is guaranteed to be within the range from 1 to 3999. 转换规则:wiki/罗马数字 拼写规则 罗马数字共有7个,即I(1)、V(5)、X(10)、L(50)、C(100)、D(500)和M(1000)。按照下述

Peep Hole 1496
上一篇: LeetCode刷题笔录Permutations II
下一篇: LeetCode刷题笔录Roman to Integer
likecool21
博客等级 码龄14年 14粉丝 123原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值