#P5025. 序言页码 Preface Numbering

序言页码 Preface Numbering

题目描述

一类书的序言是以罗马数字标页码的。传统罗马数字用单个字母表示特定的数值,以下是标准数字表:

I{I} 1{1} V{V} 5{5} X{X} 10{10} L{L} 50{50} C{C} 100{100} D{D} 500{500} M{M} 1000{1000}

最多3{3}个同样的可以表示为10n{10n}的数字(I,X,C,M){(I,X,C,M)}可以连续放在一起,表示它们的和:

III=3{III=3} CCC=300{CCC=300}

可表示为5×10n{5\times10n}的字符(V,L,D){(V,L,D)}从不连续出现。 除了下一个规则,一般来说,字符以递减的顺序接连出现:

CCLXVIII=100+100+50+10+5+1+1+1=268{CCLXVIII = 100+100+50+10+5+1+1+1 = 268}

有时,一个可表示为10n{10n}的数出现在一个比它大1{1}级或2{2}级的数前(I{I}V{V}X{X}前面,X{X}L{L}C{C}前面,等等)。在这种情况下,数值等于后面的那个数减去前面的那个数:

IV=4{IV = 4} IX=9{IX = 9} XL=40{XL = 40}

一个数 用罗马数字来表示 有且仅有一种 而且不能复合嵌套使用(比如I{I}1{1} X{X}10{10} 有人可能要说 IXL{IXL}就能表示50101{50-10-1} 但是IXL{IXL}绝对不能用来表达39{39} ) (那么39{39}用什么来表示呢 XXXIX{XXXIX}是唯一 而且正确的选择)

XD{XD}, IC{IC}, 和XM{XM}这样的表达是非法的,因为前面的数比后面的数小太多。对于XD{XD}(490{490}的错误表达),可以写成 CDXC{CDXC}; 对于IC{IC}(99{99}的错误表达),可以写成XCIX{XCIX}; 对于XM{XM}(990{990}的错误表达),可以写成CMXC{CMXC}90{90} 写成 XC{XC} 而不是 LXL{LXL}, 因为 L{L} 后面的 X{X} 意味着后继标记是 X{X} 或者更小 (不管怎样,可能吧)(等同于阿拉伯数字 每位 数字分别表示)。

给定N(1<=N<3,500){N(1 <= N < 3,500)}, 序言的页码数,请统计在第1{1}页到第N{N}页中,有几个I{I}出现,几个V{V}出现,等等 (从小到大的顺序)。不要输出没有出现过的字符。

比如N=5{N = 5}, 那么页码数为: I,II,III,IV,V{I, II, III, IV, V}. 总共有7{7}I{I}出现,2{2}V{V}出现。

输入格式

一个整数N{N}

输出格式

每行一个字符和一个数字k{k},表示这个字符出现了k{k}次。字符必须按数字表中的递增顺序输出。

样例

输入样例

5

输出样例

I 7
V 2

提示

对于 100%{100\%} 的数据,1n3500{1≤n≤3500}