#include #include using namespace std; #define printx #ifdef printx #define o(a) cout << #a << ": " << a << endl #else #define o(a) #endif int main(void) { int i, num, len; char last, buf[10000]; string s, x; while( gets(buf) != 0 ) { s = buf; x = ""; len = s.length(); for(i = 0; i < len; i++) { switch(s[i]) { case 'm' : case 'M' : x += '6'; break; case 'd' : case 'D' : x += '5'; break; case 'c' : case 'C' : x += '4'; break; case 'l' : case 'L' : x += '3'; break; case 'x' : case 'X' : x += '2'; break; case 'v' : case 'V' : x += '1'; break; case 'i' : case 'I' : x += '0'; break; } } len = x.length(); s = ""; last = x[len - 1]; for(i = len - 1; i >= 0; i--) { if(x[i] >= last) { last = x[i]; s = last + s; } } len = s.length(); num = 0; for(i = 0; i < len; i++) { switch(s[i]) { case '0': num += 1; break; case '1': num += 5; break; case '2': num += 10; break; case '3': num += 50; break; case '4': num += 100; break; case '5': num += 500; break; case '6': num += 1000; break; } } cout << num << endl; } return 0; }