1234:罗马数字(二)

时间限制:2 S   /  内存限制:65536 KB
AC:18   /  Submit:36
问题描述

DJ在看一张电影海报,对底下的一行字“MMXIV”有点好奇,原来那是罗马数字,这个数字其实就是2014。那么今年新出的电影(2017)应该是什么?

你的程式应该要能处理所有(介于1到3999之间的)任意数字。

输入描述

第1行一个正整数n,代表以下有几行测试数据;

第2到第n+1行各是一个数字。

输出描述
每读入一行数据,就输出相对应的罗马数字,然后换行(最后一行也要换行)。
样例输入复制样例

2

2017

19

样例输出

MMXVII

XIX

提示说明
罗马数字有7个,分别是 I(1), V(5), X(10), L(50), C(100), D(500),M(1000); 原则上是最大的在最左边,然后依次向右排,数值就是所有的数字加起来(XVII=10+5+1+1=17);I,X,C 可以连续用3个,但不能有连续4个(也就是4不能写作IIII,而是IV);V,L,D 不可以连续用。例外是若有一个较小的(限于 Ⅰ、X 和 C)在较大的左边,则是“减法”(IX=10-1=9);这种用法只能用1个,而且是在最右边那个较大字母的左边(19是XIX,不是IXX;29是XXIX)。
相关

16级线上比赛(2017/03/26)


Copyright 2016 - 2025 XUJC ACM Team
闽ICP备2020022076号-1