博客
关于我
13.罗马数字转整数
阅读量:442 次
发布时间:2019-03-06

本文共 1004 字,大约阅读时间需要 3 分钟。

13.罗马数字转整数

题目如下:

解法:来自leetcode的大神。

package leetcode.pac13;/** * @auther Summerday *//** * 前值小于后值  总数减去前值 * 前值大于等于后值  总数加上前值 * 最后一个值必然要加上 */public class Roman {    public static void main(String[] args) {        Roman roman = new Roman();        int m = roman.romanToInt("CMXLIV");        System.out.println("m = [" + m + "]");    }    //根据对应的字符获取相应的数值    private int getValue(char ch){        switch(ch){            case'I':return 1;            case'V':return 5;            case'X':return 10;            case'L':return 50;            case'C':return 100;            case'D':return 500;            case'M':return 1000;            default:return 0;        }    }    private int romanToInt(String s){        //sum存取总数值        int sum = 0;        //preNum用以存放前值,初始化为第一个字符代表的数值        int preNum = getValue(s.charAt(0));        //循环便利,从第二个数开始,与前值对比        for (int i = 1; i < s.length(); i++) {        //num存放当前位置上的数值            int num = getValue(s.charAt(i));        //前值小于后值,减去前值,否则将其加上            if(preNum

转载地址:http://luofz.baihongyu.com/

你可能感兴趣的文章
SQL Server 2012将与Hadoop无缝集成
查看>>
CentOS 6上的redis搭建实战记录
查看>>
亲密接触IIS 8和Web Deploy 3.0
查看>>
強大的jQuery Chart组件-Highcharts
查看>>
贝叶斯过滤算法
查看>>
微软针对Access提供了免费的SQL Server移植工具——SSMA
查看>>
使用WinSCP软件在windows和Linux中进行文件传输
查看>>
SQL Server Performance Dashboard Reports
查看>>
VS.Net 2005 Design-Time Integration
查看>>
AI Boot Camp 分享之 ML.NET 机器学习指南
查看>>
2020 中国 .NET 开发者调查问卷
查看>>
Mongo2Go 介绍
查看>>
使用密码记录工具keepass来保存密码
查看>>
腾讯云 安装mono
查看>>
开发便于运维的Windows服务
查看>>
.Net 跨平台可移植类库PCL可用于任何平台包括Mono
查看>>
NEsper Nuget包
查看>>
智能路由器操作系统OpenWrt
查看>>
多种坐标系之间的转换 Proj.NET和DotSpatial
查看>>
资深人士剖析微软开源.NET事件:战略重心已经从PC转移到云端
查看>>