【Leetcode-13】罗马数字转换为阿拉伯数字
来源:互联网 发布:广州趣丸网络 编辑:程序博客网 时间:2024/06/04 18:00
题目
罗马数字转换为阿拉伯数字
思路
程序
package leetcode.subjects;import org.junit.Test;import java.util.HashMap;/** * description: * * @author liyazhou * @since 2017-09-20 21:58 */public class RomanToInt { @Test public void test(){ String[] romans = { "IV", "VI", }; for (String roman : romans){ System.out.println(romanToInt(roman)); } } public int romanToInt(String roman){ HashMap<Character, Integer> map = new HashMap<>(); map.put('I', 1); map.put('V', 5); map.put('X', 10); map.put('L', 50); map.put('C', 100); map.put('D', 500); map.put('M', 1000); int result = 0; int weight = 0; int postweight = 0; for (int i = roman.length() - 1; i >= 0; i --){ weight = map.get(roman.charAt(i)); if (postweight <= weight) result += weight; // 如果当前的罗马数字大于其后面的罗马数字,则加上当前的罗马数字 else result -= weight; // 如果当前的罗马数字小于其后面的罗马数字,则减去当前的罗马数字 postweight = weight; } return result; }}
阅读全文
1 0
- 【Leetcode-13】罗马数字转换为阿拉伯数字
- 罗马数字转换为阿拉伯数字
- 将阿拉伯数字转换为罗马数字
- 将阿拉伯数字转换为罗马数字
- leetcode-13-罗马数字转阿拉伯数字
- Leetcode 13题 罗马数字转换为整形
- 13 12罗马数字和阿拉伯数字互相转换
- 罗马数字转换成阿拉伯数字
- 阿拉伯数字转换成罗马数字
- 阿拉伯数字转换成罗马数字
- 罗马数字转换成阿拉伯数字
- 阿拉伯数字转化为罗马数字
- 将1到1000的阿拉伯数字转换为罗马数字
- JavaScript实现1-4000内阿拉伯数字转换为罗马数字
- 将罗马数字转换成阿拉伯数字
- 将阿拉伯数字转换成罗马数字
- 罗马数字与阿拉伯数字相互转换
- 罗马数字转换阿拉伯数字0~3999
- JAVA多线程yield方法入门详解
- 104. Maximum Depth of Binary Tree
- 设计模式--装饰者模式
- 构造器和继承体系
- wget windows版安装与使用
- 【Leetcode-13】罗马数字转换为阿拉伯数字
- Centos7 下MySQL5.7 远程连接
- 编译、链接学习笔记(五)动态链接
- 预算一万以内的机器学习台式机/主机配置推荐
- 曼哈顿距离,欧式距离,明式距离,切比雪夫距离区别
- 《Android 开发工程师面试指南》
- 第三周项目三-体验复杂度2(汉诺塔问题)
- vue with zTree——带复选框的树
- 小结