#6486. B:罗马数字 (Roman Numerals)
B:罗马数字 (Roman Numerals)
题目 B:罗马数字 (Roman Numerals)
| 属性 | 规格 |
|---|---|
| 输入文件 | 标准输入 (Standard Input) |
| 输出文件 | 标准输出 (Standard Output) |
| 时间限制 | 10 秒 |
| 内存限制 | 256 MB |
| 最大分值 | 22 分 |
题目描述
古罗马人使用一套与我们今天使用的阿拉伯数字不同的计数系统。在罗马系统中,数字由字母 ‘I’、‘V’、‘X’、‘L’、‘C’、‘D’ 和 ‘M’ 的组合表示。每个字母代表一个固定的正整数值:
| 符号 | I | V | X | L | C | D | M |
|---|---|---|---|---|---|---|---|
| 数值 | 1 | 5 | 10 | 50 | 100 | 500 | 1000 |
计数规则:
- 加法原则:通常情况下,将不大于当前数值的最大符号写下,然后递归地处理剩余数值。例如,738 表示为 DCCXXXVIII ()。
- 减法原则(Subtractive Notation):为了减少符号数量,罗马人使用减法表示法。
- 4 和 9:分别写作 IV () 和 IX ()。
- 40 和 90:分别写作 XL () 和 XC ()。
- 400 和 900:分别写作 CD () 和 CM ()。
常见数字示例:
- 1-10: I, II, III, IV, V, VI, VII, VIII, IX, X
- 10-100 (十倍数): X, XX, XXX, XL, L, LX, LXX, LXXX, XC, C
任务: 给定两个以罗马数字表示的正整数 和 ,计算它们的和,并以罗马数字格式输出。
输入格式
- 第一行:一个字符串,表示正整数 ()。
- 第二行:一个字符串,表示正整数 ()。
输出格式
- 输出一个字符串,表示 的罗马数字形式。
样例
| 输入 (Standard Input) | 输出 (Standard Output) | 解释 |
|---|---|---|
IIIII |
V |
|
IVXI |
XV |
|
XLIXL |
XCIX |
(注意 99 写作 XCIX 而非 IC) |