#include #define I 1 #define V 5 #define X 10 #define L 50 #define C 100 #define D 500 #define M 1000 int main(void) { long vys=0; short cnt=0; int state=I; int cn=0; char a[10000]; while (gets(a)!=NULL) { /*printf("%s ",a);*/ for(cn=0;a[cn]!=0;cn++); cn--; /*printf(" %d",cn);*/ vys=0; state=I; cnt=0; for(;cn>=0;cn--) { if (state==I && a[cn]=='i') { state=I; cnt++; if (cnt==3){state=V;cnt=0;} vys++; /*printf("i %d",vys);*/ } if (state<=V && a[cn]=='v') { state=X; vys+=5; /*printf("v %d",vys);*/ } if (state<=X && a[cn]=='x') { state=X; cnt++; if(cnt==3){state=L;cnt=0;} vys+=10; /*printf("x %d",vys);*/ } if (state<=L && a[cn]=='l') { state=C; vys+=50; /*printf("l %d",vys);*/ } if (state<=C && a[cn]=='c') { state=C; cnt++; if(cnt==3){state=D;cnt=0;} vys+=100; /*printf("c %d",vys);*/ } if (state<=D && a[cn]=='d') { state=M; vys+=500; /*printf("d %d",vys);*/ } if (state<=M && a[cn]=='m') { state=M; vys+=1000; /*printf("m %d",vys);*/ } } printf("%ld\n",vys); } return 0; }