#include <iostream>
#include <string>
using namespace std;
int rome2arab(string r) {
int p = 0, d = 0, v;
for (string::iterator i = r.begin(); i != r.end(); i++) {
switch (*i) {
case 'M': v = 1000; break; case 'D': v = 500; break;
case 'C': v = 100; break; case 'L': v = 50; break;
case 'X': v = 10; break; case 'V': v = 5; break;
case 'I': v = 1; break; default: throw "error"; }
if (p && p < v)
d -= 2 * p, p = 0;
else
p = v;
d += v;
}
return d;
}
int main (void) {
string x;
cin >> x;
cout << rome2arab(x);
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8c3RyaW5nPgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmludCByb21lMmFyYWIoc3RyaW5nIHIpIHsKICBpbnQgcCA9IDAsIGQgPSAwLCB2OwogIAogIGZvciAoc3RyaW5nOjppdGVyYXRvciBpID0gci5iZWdpbigpOyBpICE9IHIuZW5kKCk7IGkrKykgewogICAgc3dpdGNoICgqaSkgewogICAgY2FzZSAnTSc6IHYgPSAxMDAwOyBicmVhazsgY2FzZSAnRCc6IHYgPSA1MDA7IGJyZWFrOwogICAgY2FzZSAnQyc6IHYgPSAxMDA7IGJyZWFrOyAgY2FzZSAnTCc6IHYgPSA1MDsgYnJlYWs7CiAgICBjYXNlICdYJzogdiA9IDEwOyBicmVhazsgICBjYXNlICdWJzogdiA9IDU7IGJyZWFrOwogICAgY2FzZSAnSSc6IHYgPSAxOyBicmVhazsgICAgZGVmYXVsdDogdGhyb3cgImVycm9yIjsgfQoKICAgIGlmIChwICYmIHAgPCB2KQogICAgICBkIC09IDIgKiBwLCBwID0gMDsKICAgIGVsc2UKICAgICAgcCA9IHY7CiAgICBkICs9IHY7CiAgfQoKICByZXR1cm4gZDsKfQoKaW50IG1haW4gKHZvaWQpIHsKICBzdHJpbmcgeDsKCiAgY2luICA+PiB4OwogIGNvdXQgPDwgcm9tZTJhcmFiKHgpOwoKICByZXR1cm4gMDsKfQ==