您的位置:首页 > 其它

leetcode roman to integer

2013-05-20 14:46 561 查看
注意数组定义在leetcode里面必须指定长度。

class Solution {
public:
char a[8]="MDCLXVI";
int b[7]={1000,500,100,50,10,5,1};
int romanToInt(string s)
{
int k=0;
int j=0;
int i=0;
for(;i<=6;i++)
{
if(i%2==0)
{
if(s[j]==a[i])
{
j++;k+=b[i];
}
if(s[j]==a[i])
{
j++;k+=b[i];
if(s[j]==a[i])
{
j++;k+=b[i];
}
}
else if(s[j]==a[i-2]&&i>0)
{
j++;k+=8*b[i];
}
else if(s[j]==a[i-1]&&i>0)
{
j++;k+=3*b[i];
}
}
if(i%2!=0)
{
if(s[j]==a[i])
{
j++;k+=b[i];
}
while(s[j]==a[i+1])
{
j++;k+=b[i+1];
}
}
}
return k;
}
};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: