12397

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

using namespace std;

map<int,char> mp;

int main()
{
	int n,p;
	string str;

	mp[1]='I';
	mp[5]='V';
	mp[10]='X';
	mp[50]='L';
	mp[100]='C';
	mp[500]='D';
	mp[1000]='M';

	//mp[2]=

	while(cin>>n)
	{
		str="";
		int cnt=0;

		p=0;
		if(n>=1000)
		{
			p=n/1000;
			cnt+=p*4;
			n-=1000*p;
		}


		p=0;
		if(n>=100)
		{
			p=n/100;
			if(p==1)
			cnt+=2;
			else if(p==2)
			cnt+=4;
			else if(p==3)
			cnt+=6;
			else if(p==4 || p==6)//400=CD
			cnt+=5;
			else if(p==5)
			cnt+=3;
			else if(p==7)
			cnt+=7;
			else if(p==8)
			cnt+=9;
			else if(p==9)
			cnt+=6;
			n-=100*p;
		}

		p=0;
		if(n>=10)
		{
			p=n/10;
			if(p==1)
			cnt+=2;
			else if(p==2)
			cnt+=4;
			else if(p==3)
			cnt+=6;
			else if(p==4 || p==6 || p==9)//40=XL
			cnt+=4;
			else if(p==5)
			cnt+=2;
			else if(p==7)
			cnt+=6;
			else if(p==8)
			cnt+=8;
			n-=10*p;
		}

		if(n!=0)
		{
			if(n==4 || n==6 || n==9)
			cnt+=3;
			else if(n==7)
			cnt+=4;
			else if(n==8)
			cnt+=5;
			else if(n==3)
			cnt+=3;
			else if(n==2 || n==5)
			cnt+=2;
			else if(n==1)
			cnt+=1;
		}


		cout<<cnt<<"\n";
	}
	return 0;
}

 

Leave a Reply

Your email address will not be published. Required fields are marked *