#57315. USACO Preface Numbering
USACO Preface Numbering
暂无测试数据。
题目描述
一类书的序言是以罗马数字标页码的。传统罗马数字用单个字母表示特定的数值,一下是标准数字表:
I
$1$ ,L
$50$ ,M
$1000$
V
$5$ ,C
$100$
X
$10$ ,D
$500$
最多 $3$ 个可以表示为 $10^n$ 的数字 $\left( I , X , C , M \right)$ 可以连续放在一起,表示它们的和:
III
$= 3$
CCC
$= 300$
可表示为 $5 * 10^n$ 的字符 $\left( V , L , D \right)$ 从不连续出现。
除了下一个规则,一般来说,字符以递减的顺序接连出现:
CCLXVIII
$= 100+100+50+10+5+1+1+1 = 268$
有时,一个可表示为 $10^n$ 的数出现在一个比它大的数前 (I
在V
或X
前面,X
在L
或C
前面,等等)。在这种情况下,数值等于后面的那个数减去前面的那个数:
IV
$= 4$
IX
$= 9$
XL
$= 40$
像XD
,IC
,和XM
这样的表达是非法的,因为前面的数比后面的数小太多。对于XD
($490$的错误表达),可以写成CDXC
;对于IC
($99$的错误表达),可以写成XCIX
;对于XM
($990$的错误表达),可以写成CMXC
。
给定 $N \left( 1 \leq N \lt 3,500 \right)$, 序言的页码数,请统计在第 $1$ 页到第 $N$ 页中,有几个I
出现,几个V
出现,等等(从小到大的顺序)。不要输出并没有出现过的字符。
比如 $N = 5$,那么页码数为:I
,II
,III
,IV
,V
。 总共有 $7$ 个I
出现,$2$ 个V
出现。
输入格式
一个整数 $N$。
输出格式
每行一个字符和一个数字 $k$,表示这个字符出现了 $k$ 次。字符必须按数字表中的递增顺序输出。
5
I 7
V 2