[题目描述]

Preface Numbering

序言页码

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

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

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

III=3 
CCC=300 
可表示为5x10n的字符(V,L,D)从不连续出现。

除了下一个规则,一般来说,字符以递减的顺序接连出现:

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(1 <= N < 3,500), 序言的页码数,请统计在第1页到第N也中,有几个I出现,几个V出现,等等 (从小到大的顺序)。不要输出并没有出现过的字符。

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

PROGRAM NAME: preface

INPUT FORMAT
一个整数N。

SAMPLE INPUT(preface.in) 
5

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

SAMPLE OUTPUT(preface.out)
I 7
V 2

[解题思路]

数字转换。建议先百度一下。

[Code]

{
ID: zane2951
PROG: preface
LANG: PASCAL
}program preface;
constchange:array[1..4,0..9]of string=(('','I','II','III','IV','V','VI','VII','VIII','IX'),('','X','XX','XXX','XL','L','LX','LXX','LXXX','XC'),('','C','CC','CCC','CD','D','DC','DCC','DCCC','CM'),('','M','MM','MMM','','','','','',''));varans:array['A'..'Z'] of longint;n,i:longint;//----------calc-----------
procedure calc(x:longint);
vars:string;ce,t,i:longint;begint:=0;while x>0 dobegininc(t);ce:=x mod 10;x:=x div 10;s:=change[t,ce];for i:=1 to length(s) do inc(ans[s[i]]);end;
end;//----------main-----------
beginassign(input,'preface.in'); reset(input);assign(output,'preface.out'); rewrite(output);readln(n);for i:=1 to n do calc(i);if ans['I']>0 then writeln('I ',ans['I']);if ans['V']>0 then writeln('V ',ans['V']);if ans['X']>0 then writeln('X ',ans['X']);if ans['L']>0 then writeln('L ',ans['L']);if ans['C']>0 then writeln('C ',ans['C']);if ans['D']>0 then writeln('D ',ans['D']);if ans['M']>0 then writeln('M ',ans['M']);close(input); close(output);
end.

[USACO 2.2.1] Preface Numbering相关推荐

  1. USACO:2.2.1 Preface Numbering 序言页码

    USACO:2.2.1 Preface Numbering 序言页码 一.题目描述 ★Preface Numbering 序言页码 一类书的序言是以罗马数字标页码的.传统罗马数字用单个字母表示特定的数 ...

  2. usaco Preface Numbering 序言页码

    Preface Numbering 序言页码 一类书的序言是以罗马数字标页码的.传统罗马数字用单个字母表示特定的数值,一下是标准数字 表: I 1 L 50 M 1000 V 5 C 100 X 10 ...

  3. preface numbering

    1262. [USACO题库]2.2.1 Preface Numbering序言页码 (Standard IO) 时间限制:  1000 ms  空间限制:  262144 KB  具体限制   题目 ...

  4. USACO Section2.2 Preface Numbering 解题报告 【icedream61】

    preface解题报告 ---------------------------------------------------------------------------------------- ...

  5. P1465 序言页码 Preface Numbering (手推)

    题目描述 一类书的序言是以罗马数字标页码的.传统罗马数字用单个字母表示特定的数值,以下是标准数字表: I 1 V 5 X 10 L 50 C 100 D 500 M 1000 最多3个同样的可以表示为 ...

  6. USACO-Section2.2 Preface Numbering

    2017-8-30 题目描述 序言的页码数,请统计在第1页到第N页中,有几个I出现,几个V出现... 解答 将已知存起来,不再重复计算,没有求的用已经求好的加起来 代码 /* ID: 18795871 ...

  7. Preface Numbering序言页码

    题面 (preface.pas/c/cpp) 一类书的序言是以罗马数字标页码的.传统罗马数字用单个字母表示特定的数值,以下是标准数字表: I 1 V 5 X 10 L 50 C 100 D 500 M ...

  8. 洛谷P1465 [USACO2.2]序言页码 Preface Numbering

    题目描述 给定 nn,求 1 \sim n1∼n 的 罗马数字 表示中,各个字符出现了多少次. 比如 n = 5n=5,表示为 I, II, III, IV, V.总共有 77 个 I 出现,22 个 ...

  9. SAX错误–序言中不允许包含内容

    问题 通过SAX解析器工作的XML,但是当它解析某些XML文件时,会提示以下错误消息: org.xml.sax.SAXParseException: Content is not allowed in ...

最新文章

  1. 构建一个react项目_您想要了解更多有关React的内容吗? 让我们构建一个游戏,然后玩。...
  2. 抢占式优先权调度算法
  3. java精确浮点型小数,java练习 计算n位可被浮点数精确表示的小数
  4. 利用SQL索引提高查询速度
  5. redis系列之数据库与缓存数据一致性解决方案
  6. 最小生成树基础算法(Prim + Krustal)
  7. 华为开源深度学习框架MindSpore背后的商业野心
  8. 过滤被7整除或者包含7的数子
  9. VC/MFC列表CListCtrl类的LVCOLUMN和LVITEM详解
  10. [jQuery] 你知道自定义事件吗?jQuery里的fire函数是什么意思,什么时候用?
  11. mac下使用mysql
  12. android:异步任务asyncTask介绍及异步任务下载图片(带进度条)
  13. Android3dtouch xposed,乐2 MIUI10 8.10.26增强版 主题和谐 黑域 3Dtouch 分屏 Gay设置-刷机之家...
  14. Windows软件打包方法
  15. MD5加密解密网站测试,MD5加密还安全吗?
  16. Secondary Maps (Detail Maps) Detail Mask 二级贴图(细节贴图)细节遮罩 Standard Shader系列14
  17. 全国各地知名互联网公司内推QQ群
  18. No qualifying bean of type ‘service‘ available:单元测试报错
  19. vim制作python3编辑器
  20. Cocos2dx游戏开发系列笔记7:一个简单的跑酷游戏《萝莉快跑》的消化(附下载)

热门文章

  1. matlab求定积分和不定积分
  2. 到底什么是STN技术?
  3. Pr:抠像与视频合成
  4. java中级工程师所需的技能_Java 工程师要具备哪些技能或技术?
  5. pt100转4-20mA,一转一/二转二热电阻温度变送器
  6. 2023-2029全球斑马鱼行业调研及趋势分析报告
  7. 还在到处寻找画图软件?快来用Typora画饼图、时序图、流程图、UML图和状态图吧
  8. 如何使用浏览器的localStorage缓存
  9. css实现loading图标(2)
  10. 微信公众平台版面设计需要服务器,微信公众平台丨排版的基本原则