#include <iostream>
#include <stdio.h>
#include <math.h>

//I は1, V は5, X は10, L は50, C は100, D は500, M は1000,

#define I 1
#define V 5
#define X 10
#define L 50
#define C 100
#define D 500
#define M 1000

using namespace std;

int main(){

	string str;
	while(cin>>str){
		int data[200];
		int sum = 0;
		
		//データの数値化
		for(int i=0;i<str.size();i++){
			switch(str[i]){
				case 'I':
					data[i]=I;
					break;
				case 'V':
					data[i]=V;
					break;
				case 'X':
					data[i]=X;
					break;
				case 'L':
					data[i]=L;
					break;
				case 'C':
					data[i]=C;
					break;
				case 'D':
					data[i]=D;
					break;
				case 'M':
					data[i]=M;
					break;
			}
		}

		for(int i=0;i<str.size();i++){
			if(i==str.size()-1){
				sum+=data[i];
			}
			else{
				if(data[i]<data[i+1]){
					sum+= (data[i+1]-data[i]);
					i++;
				}
				else{
					sum+=data[i];
				}
			}
		}

		cout<<sum<<endl;
	}

	return 0;

}

/*
IV
CCCCLXXXXVIIII
CDXCIX
*/
#include <iostream>
#include <vector>
#include <string>
using namespace std;

vector<int> a;
vector<string> b(4);
string st;


bool dfs(int i, int sum, int n) {

	if (i == 0) {
		sum = sum + a[0];
		i++;
	}

	if (i == n) {
		if (sum == 7) {
			for (int j = 0; j < n; j++) {
				if (j == 0) {
					cout << st[j];
					continue;
				}
				cout << b[j] << st[j];
			}
			cout << "=" << sum << endl;
			return true;
		}
		else{
			return false;
        }
    }

	b[i] = "+";
	if (dfs(i + 1, sum + a[i], n)) return true;

	b[i] = "-";
	if (dfs(i + 1, sum - a[i], n)) return true;
  
    return false;
}

int main(void) {

	cin >> st;
	for (int i = 0; i < 4; i++)
		a.push_back(st[i] - '0');

	bool a = dfs(0, 0, 4);


}