CODE 119: Integer to Roman
来源:互联网 发布:临高启明知乎 编辑:程序博客网 时间:2024/04/30 06:16
Given an integer, convert it to a roman numeral.
Input is guaranteed to be within the range from 1 to 3999.
static List<R2A> r2a = new ArrayList<R2A>();static {r2a.add(new R2A(1000, 'M'));r2a.add(new R2A(500, 'D'));r2a.add(new R2A(100, 'C'));r2a.add(new R2A(50, 'L'));r2a.add(new R2A(10, 'X'));r2a.add(new R2A(5, 'V'));r2a.add(new R2A(1, 'I'));}public String intToRoman(int num) {// Start typing your Java solution below// DO NOT write main() functionint number = num;StringBuilder sb = new StringBuilder();while (number > 0) {for (int i = 0; i < r2a.size(); i++) {int jieguo = number / r2a.get(i).number;if (jieguo <= 0) {continue;} else {if (jieguo == 4) {sb.append(r2a.get(i).roman);sb.append(r2a.get(i - 1).roman);number = number % r2a.get(i).number;} else {if (i % 2 == 1&& jieguo == 1&& i < r2a.size() - 1&& number % r2a.get(i).number/ r2a.get(i + 1).number == 4) {sb.append(r2a.get(i + 1).roman);sb.append(r2a.get(i - 1).roman);number = number % r2a.get(i + 1).number;} else {for (int j = 0; j < jieguo; j++) {sb.append(r2a.get(i).roman);}number = number % r2a.get(i).number;}}break;}}}return sb.toString();}static class R2A {public int number;public char roman;R2A(int n, char r) {number = n;roman = r;}}
- CODE 119: Integer to Roman
- CODE 118: Roman to Integer
- [leet code] Roman to Integer
- [leet code] Integer to Roman
- leetcode 日经贴,Cpp code -Roman to Integer
- leetcode 日经贴,Cpp code -Integer to Roman
- 【LEET-CODE】12. Integer to Roman【Medium】
- Integer to Roman & Roman to Integer
- Integer to Roman & Roman to Integer
- LeetCode Roman to Integer && Integer to Roman
- 【leetcode】Roman to Integer | Integer to Roman
- Leetcode - "Roman to Integer" & "Integer to Roman"
- LeetCode:Roman to Integer,Integer to Roman
- Integer to Roman and Roman to Integer
- LeetCode Integer to Roman & Roman to Integer
- Roman to Integer/Integer to Roman
- leetcode - roman to integer & integer to roman
- "Roman to Integer" and "Integer to Roman"
- Sizeof与Strlen的区别与联系
- 我是不是该换个工作
- POJ 2251 Dungeon Master (BFS)
- JAVA系列-设计模式-观察者模式
- 让apache支持jsp
- CODE 119: Integer to Roman
- Cpp Primer CH11 异常处理
- 统计单词个数
- ubuntu下mysql及mysql administrator的下载安装
- 以安装wordpress为例搭建apache+php+mysql的Web服务环境
- UIActionSheet+Blocks
- 菜鸟的学习之路(9) — ArrayList类
- android layout 布局
- 最大公约数和最小公倍数