力扣字符串组11题整数转罗马数字
发布日期:2022-02-10 13:35:52
浏览次数:20
分类:技术文章
本文共 1856 字,大约阅读时间需要 6 分钟。
罗马数字包含以下七种字符: 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 。通常情况下,罗马数字中小的数字在大的数字的右边。但也存在特例,例如 4 不写做 IIII,而是 IV。数字 1 在数字 5 的左边,所表示的数等于大数 5 减小数 1 得到的数值 4 。同样地,数字 9 表示为 IX。这个特殊的规则只适用于以下六种情况:
I 可以放在 V (5) 和 X (10) 的左边,来表示 4 和 9。
X 可以放在 L (50) 和 C (100) 的左边,来表示 40 和 90。 C 可以放在 D (500) 和 M (1000) 的左边,来表示 400 和 900。 给定一个整数,将其转为罗马数字。输入确保在 1 到 3999 的范围内。示例 1:
输入: 3
输出: "III" 示例 2:输入: 4
输出: "IV" 示例 3:输入: 9
输出: "IX" 示例 4:输入: 58
输出: "LVIII" 解释: L = 50, V = 5, III = 3. 示例 5:输入: 1994
输出: "MCMXCIV" 解释: M = 1000, CM = 900, XC = 90, IV = 4.来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/integer-to-roman 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。我用很傻很呆的方法逻辑写的
如下代码
package Demo;
import java.util.Scanner; public class Yisheng { public static void main(String[] args) { Scanner sc=new Scanner(System.in); int s=sc.nextInt(); System.out.println(intToRoman(s)); } public static String intToRoman(int num) { String a=""; int yushu=num; if(yushu/1000!=0) { int b=yushu/1000; for(int i=0;i<b;i++) { a=a+"M"; } yushu=yushu%1000; } if(yushu/100==9) { a=a+"CM"; yushu=yushu%900; }else if(yushu/100!=0){ int b=yushu/100; if(b>=5) { a=a+"D"; if(b-5>0) { for(int i=0;i<b-5;i++) { a=a+"C"; } } }else if(b==4) { a=a+"CD"; }else { for(int i=0;i<b;i++) { a=a+"C"; } } yushu=yushu%100; } if(yushu/10==9) { a=a+"XC"; yushu=yushu%90; }else if(yushu/10!=0){ int b=yushu/10; if(b>=5) { a=a+"L"; if(b-5>0) { for(int i=0;i<b-5;i++) { a=a+"X"; } } }else if(b==4) { a=a+"XL"; }else { for(int i=0;i<b;i++) { a=a+"X"; } } yushu=yushu%10; } if(yushu==9) { a=a+"IX"; yushu=yushu%9; }else if(yushu!=0){ int b=yushu; if(b>=5) { a=a+"V"; System.out.println(b); if(b-5>0) { for(int i=0;i<b-5;i++) { a=a+"I"; } } }else if(b==4) { a=a+"IV"; }else { for(int i=0;i<b;i++) { a=a+"I"; } } } return a;}
}
转载地址:https://blog.csdn.net/zoooo_/article/details/96631625 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
初次前来,多多关照!
[***.217.46.12]2024年03月26日 19时00分21秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
linux mysql 不能连接远程_linux mysql 远程连接
2021-06-24
PHP实现 bcrypt,如何使php中的bcrypt和Java中的jbcrypt兼容
2021-06-24
php8安全,PHP八大安全函数解析
2021-06-24
php基础语法了解和熟悉的表现,PHP第二课 了解PHP的基本语法以及目录结构
2021-06-24
matlab中lag函数用法,MATLAB movavg函数用法
2021-06-24
matlab变形监测,基于matlab的变形监测数据处理与分析_毕业设计论文
2021-06-24
opencv matlab编程,在Matlab中调用OpenCV函数 | 学步园
2021-06-24
c语言文件wt,c语言,wt和rt中的t是什么意思
2021-06-24
c语言运行几进制,【C语言】求已知等式在几进制条件下成立
2021-06-24
电梯运行仿真c语言代码,电梯调度算法模拟(示例代码)
2021-06-24
云麦小米华为体脂秤怎么样_云康宝和华为智能体脂秤对比评测,实际体验告诉你哪款更好...
2021-06-24
linux 条件判断 取非_Linux awk 系列文章之 awk 多重条件判断
2021-06-24
c语言中如何将字符串的元素一个一个取出_C语言中常用的字符串操作函数
2021-06-24
5w2h原则指的是什么_什么是5W2H分析法?一首小诗带入进入大门。
2021-06-24
ad19 导出step 没有pcb_几款主流PCB软件哪个最好用,你用过几款?
2021-06-24
ocdma相干非相干_《Acconeer 60GHz脉冲相干雷达芯片:A111》
2021-06-24
修改表格字体颜色_Excel技巧:Excel如何修改字体颜色
2021-06-24