罗马数转整数
int romanToInt(char * s){int longth=strlen(s);
int i=0;
int sum=0;
int* flag=NULL;
flag=(int*)malloc(longth*sizeof(int));
for(i=0;i<longth;i++)
{
switch(s)
{ case 'I':flag=1;break;
case 'V': flag=5;break;
case 'X': flag=10;break;
case 'L': flag=50;break;
case 'C': flag=100;break;
case 'D': flag=500;break;
case 'M': flag=1000;break;}
}
for(i=0;i<longth-1;i++)
{
flag=flag>flag?flag:-flag;
}
for(i=0;i<longth;i++)
sum+=flag;
return sum;
}
哪里有问题呢?
举例:输入: s = "IV"
输出: 4
本帖最后由 jhq999 于 2022-9-14 17:33 编辑
-1+5 sum可不就是等于4吗? https://fishc.com.cn/thread-217774-1-1.html 你希望 IV 等于神马?
IV 不就是等于 4 吗?
页:
[1]