由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - leetcode: integer to roman 结果不同
相关主题
LeetCode上的Integer to Roman和 Roman to Integer请问下leetcode的two sum题目
如何判断string是valid roman数字问道题leetcode的题,关于bit运算的
也贴个转罗马数字的codeshare int2roman and roman2int java version
[BSSD] FLGUA面经问个Google的面经问题
integer to roman的考点在哪里呢?Leetcode第30题真心不容易
今天算是见到最精炼的Integer to Roman的解法了好不容易写了个bug free, 可是被说会秒据, 帮看看
问了3个设计题,2个coding题@Lleetcode上最搞笑的是这题
关于Hash_map这题怎么做?
相关话题的讨论汇总
话题: int话题: pair话题: div话题: num话题: string
进入JobHunting版参与讨论
1 (共1页)
h**o
发帖数: 548
1
intToRoman(4)在自己机上得 VI. 但在leetcode上得IIII,expect VI. 所以leetcode没
过。
你们有类似问题吗?一下是我的程序:
另:你们都懂罗马数字吗? 我不懂,所以是看提示才知道大概怎么做。
string intToRoman(int num) {
unordered_map m;
m["M"] = 1000;
m["CM"] = 900;
m["D"] = 500;
m["CD"] = 400;
m["C"] = 100;
m["XC"] = 90;
m["L"] = 50;
m["XL"] = 40;
m["X"] = 10;
m["IX"] = 9;
m["V"] = 5;
m["IV"] = 4;
m["I"] = 1;
vector> v(m.begin(), m.end());
string str;
int k, div;
int size = v.size();
for (int i = 0; i < size && num>0; i++){
div = num / v[i].second;
for (k = 0; k < div; k++){
str+=v[i].first;
}
num -= div * v[i].second;
}
return str;
}
s*******y
发帖数: 12
2
LZ的代码有点奇怪, 既然是从integer map到罗马数字, 怎么定义了一个从罗马数字到
integer的map
感觉定义个, 十, 百, 千的一个数组就够了, 然后解释给定数值的个位, 十位, 百位,
千位, 直接map, 然后链接字符串就好了.

【在 h**o 的大作中提到】
: intToRoman(4)在自己机上得 VI. 但在leetcode上得IIII,expect VI. 所以leetcode没
: 过。
: 你们有类似问题吗?一下是我的程序:
: 另:你们都懂罗马数字吗? 我不懂,所以是看提示才知道大概怎么做。
: string intToRoman(int num) {
: unordered_map m;
: m["M"] = 1000;
: m["CM"] = 900;
: m["D"] = 500;
: m["CD"] = 400;

h**o
发帖数: 548
3
那个unordered_map 是从roman to integer 拷的, 因为懒得再敲一遍,
目的就是得到 roman 和 int 的配对。和你建议的是一个意思。 我把 v 改写成这样好
了:
vector> v;
v.push_back(make_pair("M",1000));
v.push_back(make_pair("CM",900));
v.push_back(make_pair("D",500));
v.push_back(make_pair("CD",400));
v.push_back(make_pair("C",100));
v.push_back(make_pair("XC",90));
v.push_back(make_pair("L",50));
v.push_back(make_pair("XL",40));
v.push_back(make_pair("X",10));
v.push_back(make_pair("IX",9));
v.push_back(make_pair("V",5));
v.push_back(make_pair("IV",4));
v.push_back(make_pair("I",1));

,

【在 s*******y 的大作中提到】
: LZ的代码有点奇怪, 既然是从integer map到罗马数字, 怎么定义了一个从罗马数字到
: integer的map
: 感觉定义个, 十, 百, 千的一个数组就够了, 然后解释给定数值的个位, 十位, 百位,
: 千位, 直接map, 然后链接字符串就好了.

1 (共1页)
进入JobHunting版参与讨论
相关主题
这题怎么做?integer to roman的考点在哪里呢?
求点评:电话面试(今天第二天没有消息回复,感觉可能挂了)今天算是见到最精炼的Integer to Roman的解法了
罗马数字转换成十进制问了3个设计题,2个coding题@L
a problem from leetcode: high efficiency algorithm for combinations problem关于Hash_map
LeetCode上的Integer to Roman和 Roman to Integer请问下leetcode的two sum题目
如何判断string是valid roman数字问道题leetcode的题,关于bit运算的
也贴个转罗马数字的codeshare int2roman and roman2int java version
[BSSD] FLGUA面经问个Google的面经问题
相关话题的讨论汇总
话题: int话题: pair话题: div话题: num话题: string