#include int main() { char s[10001]; while (scanf("%[^\n]",s)) { int EndMM,EndCM; int EndMD,EndCD; int EndMC,EndDC,EndCC,EndCCC,EndXC; int EndNXL,EndXL; int EndLX,EndNINLX,EndXX,EndXXX,EndIX; int EndNIV,EndIV; int EndNVI,EndVI,EndII,EndIII; EndMM=0; EndCM=EndMD=EndCD=EndMC=EndDC=EndCC=EndCCC=EndXC=EndNXL=EndXL=EndLX=EndNINLX=EndXX=EndXXX=EndIX=EndNIV=EndIV=EndNVI=EndVI=EndII=EndIII=-1; int Ev; int i; for (i=0;s[i]!=0;i++) {switch (s[i]) { case 'm': if (EndMM != -1) EndMM = EndMM+1000; if (EndMC != -1) EndCM = EndMC+800; break; case 'd': if (EndMM != -1) EndMD = EndMM + 500; if (EndMC != -1) EndCD = EndMC + 300; break; case 'c': if (EndCC != -1) EndCCC = EndCC + 100; Ev = -1; if (EndMC != -1) Ev = EndMC; if (EndDC != -1) Ev = ((Ev > EndDC) ? Ev : EndDC); if (Ev != -1) EndCC = Ev + 100; if (EndMM != -1) EndMC = EndMM + 100; if (EndMD != -1) EndDC = EndMD + 100; if (EndNINLX != -1) EndXC = EndNINLX + 80; break; case 'l': if (EndNINLX != -1) EndXL = EndNINLX + 30; Ev = -1; if (EndMM != -1) Ev = EndMM; if (EndCM != -1) Ev = (Ev > EndCM) ? Ev : EndCM; if (EndMD != -1) Ev = (Ev > EndMD) ? Ev : EndMD; if (EndCD != -1) Ev = (Ev > EndCD) ? Ev : EndCD; if (EndMC != -1) Ev = (Ev > EndMC) ? Ev : EndMC; if (EndDC != -1) Ev = (Ev > EndDC) ? Ev : EndDC; if (EndCC != -1) Ev = (Ev > EndCC) ? Ev : EndCC; if (EndCCC != -1) Ev = (Ev > EndCCC) ? Ev : EndCCC; if (Ev != -1) EndNXL = Ev + 50; break; case 'x': if (EndXX != -1) EndXXX = EndXX + 10; Ev = -1; if (EndNINLX != -1) Ev = EndNINLX; if (EndLX != -1) Ev = (Ev > EndLX) ? Ev : EndLX; if (Ev != -1) EndXX = Ev + 10; if (EndNXL != -1) EndLX = EndNXL + 10; if (EndMM != -1) Ev = EndMM; if (EndCM != -1) Ev = (Ev > EndCM) ? Ev : EndCM; if (EndMD != -1) Ev = (Ev > EndMD) ? Ev : EndMD; if (EndCD != -1) Ev = (Ev > EndCD) ? Ev : EndCD; if (EndMC != -1) Ev = (Ev > EndMC) ? Ev : EndMC; if (EndDC != -1) Ev = (Ev > EndDC) ? Ev : EndDC; if (EndCC != -1) Ev = (Ev > EndCC) ? Ev : EndCC; if (EndCCC != -1) Ev = (Ev > EndCCC) ? Ev : EndCCC; if (Ev != -1) EndNINLX = Ev + 10; if (EndNVI != -1) EndIX = EndNVI + 8; break; case 'v': if (EndNVI != -1) EndIV = EndNVI + 3; Ev = -1; if (EndMM != -1) Ev = EndMM; if (EndCM != -1) Ev = (Ev > EndCM) ? Ev : EndCM; if (EndMD != -1) Ev = (Ev > EndMD) ? Ev : EndMD; if (EndCD != -1) Ev = (Ev > EndCD) ? Ev : EndCD; if (EndMC != -1) Ev = (Ev > EndMC) ? Ev : EndMC; if (EndDC != -1) Ev = (Ev > EndDC) ? Ev : EndDC; if (EndCC != -1) Ev = (Ev > EndCC) ? Ev : EndCC; if (EndCCC != -1) Ev = (Ev > EndCCC) ? Ev : EndCCC; if (EndXC != -1) Ev = (Ev > EndXC) ? Ev : EndXC; if (EndNXL != -1) Ev = (Ev > EndNXL) ? Ev : EndNXL; if (EndXL != -1) Ev = (Ev > EndXL) ? Ev : EndXL; if (EndLX != -1) Ev = (Ev > EndLX) ? Ev : EndLX; if (EndNINLX != -1) Ev = (Ev > EndNINLX) ? Ev : EndNINLX; if (EndXX != -1) Ev = (Ev > EndXX) ? Ev : EndXX; if (EndXXX != -1) Ev = (Ev > EndXXX) ? Ev : EndXXX; if (Ev != -1) EndNIV = Ev + 5; break; case 'i': if (EndII != -1) EndIII = EndII + 1; Ev = -1; if (EndVI != -1) Ev = EndVI; if (EndNVI != -1) Ev = (Ev > EndNVI) ? Ev : EndNVI; if (Ev != -1) EndII = Ev + 1; Ev = -1; if (EndMM != -1) Ev = EndMM; if (EndCM != -1) Ev = (Ev > EndCM) ? Ev : EndCM; if (EndMD != -1) Ev = (Ev > EndMD) ? Ev : EndMD; if (EndCD != -1) Ev = (Ev > EndCD) ? Ev : EndCD; if (EndMC != -1) Ev = (Ev > EndMC) ? Ev : EndMC; if (EndDC != -1) Ev = (Ev > EndDC) ? Ev : EndDC; if (EndCC != -1) Ev = (Ev > EndCC) ? Ev : EndCC; if (EndCCC != -1) Ev = (Ev > EndCCC) ? Ev : EndCCC; if (EndXC != -1) Ev = (Ev > EndXC) ? Ev : EndXC; if (EndNXL != -1) Ev = (Ev > EndNXL) ? Ev : EndNXL; if (EndXL != -1) Ev = (Ev > EndXL) ? Ev : EndXL; if (EndLX != -1) Ev = (Ev > EndLX) ? Ev : EndLX; if (EndNINLX != -1) Ev = (Ev > EndNINLX) ? Ev : EndNINLX; if (EndXX != -1) Ev = (Ev > EndXX) ? Ev : EndXX; if (EndXXX != -1) Ev = (Ev > EndXXX) ? Ev : EndXXX; if (Ev != -1) EndNVI = Ev + 1; if (EndNIV != -1) EndVI = EndNIV + 1; break; }; /* printf("MM%dCM%dMD%dCD%dMC%dDC%dCC%dCCC%dXC%d\n",EndMM,EndCM,EndMD,EndCD,EndMC,EndDC,EndCC,EndCCC,EndXC);*/ }; Ev = (EndMM > EndCM) ? EndMM : EndCM; Ev = (Ev > EndMD) ? Ev : EndMD; Ev = (Ev > EndCD) ? Ev : EndCD; Ev = (Ev > EndMC) ? Ev : EndMC; Ev = (Ev > EndDC) ? Ev : EndDC; Ev = (Ev > EndCC) ? Ev : EndCC; Ev = (Ev > EndCCC) ? Ev : EndCCC; Ev = (Ev > EndXC) ? Ev : EndXC; Ev = (Ev > EndNXL) ? Ev : EndNXL; Ev = (Ev > EndXL) ? Ev : EndXL; Ev = (Ev > EndLX) ? Ev : EndLX; Ev = (Ev > EndNINLX) ? Ev : EndNINLX; Ev = (Ev > EndXX) ? Ev : EndXX; Ev = (Ev > EndXXX) ? Ev : EndXXX; Ev = (Ev > EndIX) ? Ev : EndIX; Ev = (Ev > EndNIV) ? Ev : EndNIV; Ev = (Ev > EndIV) ? Ev : EndIV; Ev = (Ev > EndNVI) ? Ev : EndNVI; Ev = (Ev > EndVI) ? Ev : EndVI; Ev = (Ev > EndII) ? Ev : EndII; Ev = (Ev > EndIII) ? Ev : EndIII; printf("%d\n",Ev); }; return 0; };