using System.Collections;
using System.Collections.Generic;
public static void Main()
var test = GetOrdinalNumber(testNumber);
public static int GetOrdinalNumber(string input)
Dictionary<string, string> romanNumbers = new Dictionary<string, string>();
romanNumbers.Add("I","1");
romanNumbers.Add("V","5");
romanNumbers.Add("X","10");
romanNumbers.Add("L","50");
romanNumbers.Add("C","100");
romanNumbers.Add("D","500");
romanNumbers.Add("M","1000");
Dictionary<string, string> complexRomanNumbers = new Dictionary<string, string>();
complexRomanNumbers.Add("IV","4");
complexRomanNumbers.Add("IX","9");
complexRomanNumbers.Add("XL","40");
complexRomanNumbers.Add("XC","90");
complexRomanNumbers.Add("CD","400");
complexRomanNumbers.Add("CM","900");
foreach(var current in complexRomanNumbers)
input = input.Replace(current.Key, string.Format("-{0}", current.Value));
foreach(var current in romanNumbers)
input = input.Replace(current.Key, string.Format("-{0}", current.Value));
var finalArray = input.Split('-');
foreach(var current in finalArray)
if (!string.IsNullOrEmpty(current))
ordinalNumber += Convert.ToInt32(current);