請求幫忙
#include<iostream>
#include<string.h>
#include<cmath>
using namespace std;
int t(string s);
int main()
{
string s,o;
while(cin>>s)
{
if(s=="#")
break;
else
{
int a;
cin>>o;
a= t(s)-t(o) ;
if(a>0);
else a=0-a;
int k=-1;
if(a==0)
cout<<"ZERO";
while(a)
{
if(a>=1000)
{
cout<<"M";
a=a-1000;
}
else if(a>=900)
{
cout<<"CM";
a=a-900;
}
else if(a>=500)
{
cout<<"D";
a=a-500;
}
else if(a>=400)
{
cout<<"CD";
a=a-400;
}
else if(a>=100)
{
cout<<"C";
a=a-100;
}
else if(a>=90)
{
cout<<"XC";
a=a-90;
}
else if(a>=50)
{
cout<<"L";
a=a-50;
}
else if(a>=40)
{
cout<<"XL";
a=a-40;
}
else if(a>=10)
{
cout<<"X";
a=a-10;
}
else if(a>=9)
{
cout<<"IX";
a=a-9;
}
else if(a>=5)
{
cout<<"V";
a=a-5;
}
else if(a>=4)
{
cout<<"IV";
a=a-4;
}
else
{
cout<<"I";
a--;
}
}
cout<<endl;
}
}
return 0;
}
int t(string s)
{
int f[100]={0},e,a,l=0;
for(a=0;a<s.size();a++)
{
if(s[a]==73&&s[a+1]==86) l=l-2; //IV
if(s[a]==88&&s[a+1]==76) l=l-20; //XL
if(s[a]==88&&s[a+1]==67) l=l-20; //XC
if(s[a]==67&&s[a+1]==68) l=l-200; //CD
if(s[a]==67&&s[a+1]==77) l=l-200; //CM
if (s[a]==73) f[a]= 1; //I
else if(s[a]==86) f[a]= 5; //V
else if(s[a]==88) f[a]= 10; //X
else if(s[a]==76) f[a]= 50; //L
else if(s[a]==67) f[a]= 100; //C
else if(s[a]==68) f[a]= 500; //D
else f[a]=1000; //M
}
e=0;
while(a--)
e=e+f[a];
return e+l;
}