【leetcode】Integer to Roman

最近使用开发的过程中出现了一个小问题,顺便记录一下原因和方法--

    Question : 

    Given an integer, convert it to a roman numeral.

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

    Anwser 1 :    

class Solution {
public:string intToRoman(int num) {// Start typing your C/C++ solution below// DO NOT write int main() function    string res;string symbol[]={"M","CM","D","CD","C","XC","L","XL","X","IX","V","IV","I"};int value[]={1000,900,500,400,100,90,50,40,10,9,5,4,1};int i = 0;while(num != 0){if(num >= value[i]){    // minus largest numbernum -= value[i];res += symbol[i];} else {i++;   }}return res;}
};

    Anwser 2 :   

每日一道理
古人云:“海纳百川,有容乃大。”人世间,不可能没有矛盾和争吵,我们要以磊落的胸怀和宽容的微笑去面对它 。哈伯德也曾说过:“宽恕和受宽恕的难以言喻的快乐,是连神明都会为之羡慕的极大乐事。”让我们从宽容中享受快乐,从谅解中体会幸福吧!
class Solution {
public:string intToRoman(int num) {// Start typing your C/C++ solution below// DO NOT write int main() function    char symbol[7] = {'I', 'V', 'X', 'L', 'C', 'D', 'M'};string res = "";int scale = 1000;for (int i = 6; i >= 0; i -= 2){int digit = num / scale;num2roman(digit, res, symbol + i);num %= scale;scale /= 10;}return res;}void num2roman(int num, string& res, char symbols[]){if (num == 0)return;if (num <= 3)res.append(num, symbols[0]);else if (num == 4){res.append(1, symbols[0]);res.append(1, symbols[1]);}else if (num <= 8){res.append(1, symbols[1]);res.append(num - 5, symbols[0]);}else{res.append(1, symbols[0]);res.append(1, symbols[2]);}}
};

文章结束给大家分享下程序员的一些笑话语录: 一位程序员去海边游泳,由于水性不佳,游不回岸了,于是他挥着手臂,大声求.救:“F1,F1!”

转载于:https://www.cnblogs.com/xinyuyuanm/archive/2013/04/21/3034383.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/576014.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MySQL必会企业面试题

本文转载 老男孩教育原文&#xff1a;http://user.qzone.qq.com/49000448/blog/1427333863 1.登陆数据库 (1)单实例 mysql -uroot -poldboy (2)多实例 mysql -uroot -poldboy -S /data/3306/mysql.sock 2.查看数据库版本及当前登录用户是什么 mysql> select version(); 查看…

关于ORACLE的GUID主键生成

转自http://blog.sina.com.cn/s/blog_53d3c24a0100mplc.html项目中若采用oracle数据库&#xff0c;则主键生成可以有两种方式&#xff0c;一是用sys_guid(),二是定义一个sequence&#xff0c;然后用nextval得到ID。Oracle的定义sequence例子&#xff1a;create sequence seq_te…

MySQL binlog三种模式

原文出自 http://www.abcdocker.com/abcdocker/213 MySQ binlog三种模式及设置方法 1.1 Row Level 行模式 日志中会记录每一行数据被修改的形式&#xff0c;然后在slave端再对相同的数据进行修改优点&#xff1a;在row level模式下&#xff0c;bin-log中可以不记录执行的sql…

contenttype添加field

1 $splist.contenttypes["News"].fieldlinks.add($fieldlink) contenttypes中添加field的方法。 下面这种则不起作用 1 $splist.contenttypes["News"].fields.add($spfield) http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.spcontenttype.…

虚拟视频驱动程序vivi.c源码分析

虚拟视频驱动程序vivi.c源码分析以下先把上一篇文章中的最后一段&#xff0c;放在这里利于程序源码的分析&#xff1a; vivi.c 虚拟视频驱动程序----- 此代码模拟一个真正的视频设备V4L2 API (位于drivers/media/video目录下) 入口&#xff1a;int __init vivi_init(void) …

Cobar部署与测试

原文出自 http://www.abcdocker.com/abcdocker/84 Cobar部署与测试 一、Cobar介绍 1.1功能概述&#xff1a; Cobar是关系型数据的分布式处理系统&#xff0c;它可以在分布式的环境下看上去像传统数据库一样为您提供海量数据服务。 1.1.1 Cobar核心功能&#xff1a; 分布…

深度css:关于浮动(float,clear)的图形化理解

接触CSS以来&#xff0c;有人说浮动始终给人一种神秘的感觉&#xff0c;正因为有了它的一成不变的table布局开始了渐渐被divcss取代&#xff0c;它是控制传说中文本流核心和关键要素&#xff0c;懂得控制“块”的流动和布局即等于控制了网页的排版和布局。今天就以简单图文形式…

amoba读写分离

原文出自 http://www.abcdocker.com/abcdocker/81 1.AMOEBA是什么 Amoeba(变形虫)项目,该开源框架于2008年 开始发布一款 Amoeba for Mysql软件。这个软件致力于MySQL的分布式数据库前端代理层&#xff0c;它主要在应用层访问MySQL的 时候充当SQL路由功能&#xff0c;专注于分布…

js的parseInt函数结果为0很奇怪的问题

当执行的代码为parseInt("08")时&#xff0c;结果为0 而执行的代码为parseInt("0X")时&#xff0c;其中X为1~9之间除过8的数字&#xff0c;结果都是正常的数字 不太明白为什么会出现这样的结果 参考&#xff1a;http://lhb-ljf.iteye.com/blog/1703631 今天…

MySQL事务及字符集介绍

原文 http://www.abcdocker.com/abcdocker/77 事务介绍 简单来说&#xff0c;事务就是指逻辑上的一组SQL语句操作&#xff0c;组成这组操作的各个SQL语句&#xff0c;执行时要么全成功要么全失败。 MySQL5.5支持事务的引擎&#xff1a;Innodb/ndb事务四大特性&#xff08;ACID&…

为了IT人的荣耀,请大力支持《中国人的紧箍咒》!理由如下——

博友们请注意——老孙又出新书了&#xff01; 先前&#xff0c;老孙从技术跨界到管理&#xff0c;出了一本《知道力》&#xff1b;如今又从管理跨界到文化&#xff0c;新出一本文化书《中国人的紧箍咒》。 作为登陆文化新战场的IT第一人&#xff0c;老孙正在诺曼底滩头独自奋战…

MyCat介绍与配置(精)

Mycat 前生今世如果我有一个32核心的服务器&#xff0c;我就可以实现1个亿的数据分片&#xff0c;我有32核心的服务器么&#xff1f;没有&#xff0c;所以我至今无法实现1个亿的数据库分片。---Mycats Plan Mycat 简介Mycat是什么&#xff1f; 从定义和分类来看&#xff0c;它是…

Linux 启动顺序

1&#xff0c;BIOS初始化 2&#xff0c;MBR&#xff08;CENTOS 5.5 的bootloader分区表结束位512B&#xff09; 3&#xff0c;GRUB &#xff08;1&#xff09;加载内核kernel为只读 &#xff08;2&#xff09;加载RAMDISK 4&#xff0c;INIT进程 运行文件如下&#xff1a; /etc…

mysql-mmm 集群高可用软件介绍

mysql-mmm 集群高可用软件介绍 MMM即Master-Master Replication Manager for MySQL&#xff08;mysql主主复制管理器&#xff09;关于mysql主主复制配置的监控、故障转移和管理的一套可伸缩的脚本套件&#xff08;在任何时候只有一个节点可以被写入&#xff09;&#xff0c;这个…

搜索提示时jquery的focusout和click事件冲突问题完美解决

在主流的搜索引擎上搜索时&#xff0c;输入内容&#xff0c;往往会弹出智能提示。输入框为input&#xff0c;智能提示区域为suggest。接下来一般有两种操作&#xff1a; 1.选择某一提示&#xff0c;则把内容复制到input中&#xff0c;自动关闭suggest&#xff1b; 2.点击网页其…

高可用MySQL MHA介绍

MySQL MHA介绍 MHA简介 MHA是一位日本MySQL大牛用Perl写一套MySQL故障切换方案&#xff0c;来保证数据库系统的高可用&#xff0c;在宕机的事件内&#xff08;通常10-30秒&#xff09;&#xff0c;完成故障转意&#xff0c;部署MHA&#xff0c;可避免主从一致性问题&#xff0c…

Tizen有用的网站

Tizen的会议上周在旧金山&#xff0c;打开网页&#xff0c;因为向公众Tizen的开发人员手机现在有很多未来的相关信息。 与其他现在介绍一些有用的网站获取相关信息。 1 Tizen.org https://www.tizen.org/另一种是现在的官方网站。 开放haetguyo&#xff0c;写在九月底&#xff…

Xtrabackup安装以及应用

Xtrabackup是一个对InnoDB做数据备份的工具&#xff0c;支持在线热备份&#xff08;备份时不影响数据读写&#xff09;&#xff0c;是商业备份工具InnoDB Hotbackup的一个很好的替代品。 xtrabackup官方网址&#xff1a;https://www.percona.com/downloads/XtraBackup/MySQL Ba…

控件列[Coolite]上传文件

首先声明&#xff0c;我是一个菜鸟。一下文章中出现技术误导情况盖不负责 1 .配置及单简局布 2.经常用使组件绍介 2.1 Dropdownlist结合TreePanel 2.2 拟模进度条 2.3 上传文件 2.4 TabPanel基本用法 2.5 行执台后程序示提等待息信,运行终了消逝 2.6 历遍清空ext.net textbox控…

MySQL双主配置

双机热备的概念简单说一下&#xff0c;就是要保持两个数据库的状态自动同步。对任何一个数据库的操作都自动应用到另外一个数据库&#xff0c;始终保持两个数据库数据一致。 这样做的好处多。 1. 可以做灾备&#xff0c;其中一个坏了可以切换到另一个。 2. 可以做负载均衡&…