经典简约
清爽简洁,回归本真
液态水晶
毛玻璃+霓虹光带
赛博朋克
霓虹故障艺术风
🚫
违规操作检测
禁止使用右键菜单
⚠️ 此操作已被系统记录
1

罗马数字

📝 题解 🔵 仅限 C++
题目描述
<p> 古罗马帝国开创了辉煌的人类文明,但他们的数字表示法的确有些繁琐,尤其在表示大数的时候,现在看起来简直不能忍受,所以在现代很少使用了。之所以这样,不是因为发明表示法的人的智力的问题,而是因为一个宗教的原因,当时的宗教禁止在数字中出现0的概念!<br /> &nbsp;&nbsp;&nbsp; 罗马数字的表示主要依赖以下几个基本符号:<br /> &nbsp;&nbsp;&nbsp; I&nbsp; 1<br /> &nbsp;&nbsp;&nbsp; V&nbsp; 5<br /> &nbsp;&nbsp;&nbsp; X&nbsp; 10<br /> &nbsp;&nbsp;&nbsp; L&nbsp; 50<br /> &nbsp;&nbsp;&nbsp; C&nbsp; 100<br /> &nbsp;&nbsp;&nbsp; D&nbsp; 500<br /> &nbsp;&nbsp;&nbsp; M&nbsp; 1000<br /> &nbsp;&nbsp;&nbsp; 这里,我们只介绍一下1000以内的数字的表示法。<br /> 单个符号重复多少次,就表示多少倍。最多重复3次。比如:CCC表示300&nbsp; XX表示20,但150并不用LLL表示,这个规则仅适用于I X C M。<br /> &nbsp;&nbsp;&nbsp; 如果相邻级别的大单位在右,小单位在左,表示大单位中扣除小单位。比如:IX表示9&nbsp; IV表示4&nbsp; XL表示40 更多的示例参见下表,你找到规律了吗?<br /> I,1 <br /> II,2<br /> III,3<br /> IV,4<br /> V,5<br /> VI,6<br /> VII,7<br /> VIII,8<br /> IX,9 <br /> &nbsp;<br /> X,10<br /> XI,11<br /> XII,12<br /> XIII,13<br /> XIV,14<br /> XV,15<br /> XVI,16<br /> XVII,17<br /> XVIII,18<br /> XIX,19<br /> XX,20<br /> XXI,21<br /> XXII,22<br /> XXIX,29<br /> XXX,30<br /> XXXIV,34<br /> XXXV,35<br /> XXXIX,39<br /> XL,40<br /> L,50<br /> LI,51<br /> LV,55<br /> LX,60<br /> LXV,65<br /> LXXX,80<br /> XC,90<br /> XCIII,93<br /> XCV,95<br /> XCVIII,98<br /> XCIX,99<br /> C,100<br /> CC,200<br /> CCC,300<br /> CD,400<br /> D,500<br /> DC,600<br /> DCC,700<br /> DCCC,800<br /> CM,900<br /> CMXCIX,999<br /> 本题目的要求是:请编写程序,由用户输入若干个罗马数字串,程序输出对应的十进制表示。<br /> &nbsp;&nbsp;&nbsp; 输入格式是:第一行是整数n,表示接下来有n个罗马数字(n&lt;100)。以后每行一个罗马数字。罗马数字大小不超过999。<br /> &nbsp;&nbsp;&nbsp; 要求程序输出n行,就是罗马数字对应的十进制数据。<br /> &nbsp;&nbsp;&nbsp; 例如,用户输入:<br /> 3<br /> LXXX<br /> XCIII<br /> DCCII<br /> 则程序应该输出:<br /> 80<br /> 93<br /> 702 </p>
输入格式
输出格式
提交代码
请先登录后提交

🤖 AI 解题助手

DeepSeek
就绪
👋 你好!我是 AI 解题助手。
我已阅读了这道题,可以帮你分析思路、提供代码示例。
⚠️ 请先登录后使用