leetCode 12. Integer to Roman | 字符串 | Medium
12. Integer to Roman
Given an integer, convert it to a roman numeral.
Input is guaranteed to be within the range from 1 to 3999.
题目大意:
将一个给定的阿拉伯数字转换成罗马数字。
思路:
这题看到的时候,想的太多。
其实很简单,将千位,百位,十位,个位都表示出来,然后组合即可。
代码如下:
classSolution{public:stringintToRoman(intnum){stringthousands[4]={"","M","MM","MMM"};stringhundreds[10]={"","C","CC","CCC","CD","D","DC","DCC","DCCC","CM"};stringtens[10]={"","X","XX","XXX","XL","L","LX","LXX","LXXX","XC"};stringunits[10]={"","I","II","III","IV","V","VI","VII","VIII","IX"};string*hits[4]={units,tens,hundreds,thousands};stringresult;intindex=0;while(num>0){result=hits[index][num%10]+result;num=num/10;index++;}returnresult;}};
总结:
有时候题目没有那么难,不要自己搞的很复杂。问题简单化。简单化。。。
2016-08-19 15:16:29
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。