题目信息

题目类型
练习
题目年份
2025
题目题型
编程题
关 键 词
序言页码

题目题干

序言页码

一类书的序言是以罗马数字标页码的。传统罗马数字用单个字母表示特定的数值,一下是标准数字表:oqp100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

I 1 L 50 M 1000 V 5 C 100 X 10 D 500oqp100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

最多3个可以表示为10n的数字(I,X,C,M)可以连续放在一起,表示它们的和:oqp100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

III=3 CCC=300 可表示为5x10n的字符(V,L,D)从不连续出现。oqp100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

除了下一个规则,一般来说,字符以递减的顺序接连出现:oqp100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

CCLXVIII = 100+100+50+10+5+1+1+1 = 268 有时,一个可表示为10^n的数出现在一个比它大的数前(I在V或X前面,X在L或C前面,等等)。在这种情况下,数值等于后面的那个数减去前面的那个数:oqp100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

IV = 4 IX = 9 XL = 40 像XD, IC, 和XM这样的表达是非法的,因为前面的数比后面的数小太多。对于XD(490的错误表达),可以写成 CDXC; 对于IC(99的错误表达),可以写成XCIX; 对于XM(990的错误表达),可以写成CMXC。oqp100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

给定N(1 <= N < 3,500), 序言的页码数,请统计在第1页到第N也中,有几个I出现,几个V出现,等等 (从小到大的顺序)。不要输出并没有出现过的字符。oqp100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

比如N = 5, 那么页码数为: I, II, III, IV, V. 总共有7个I出现,2个V出现。oqp100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

输入

一个整数N。oqp100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

输出

每行一个字符和一个数字k,表示这个字符出现了k次。字符必须按数字表中的递增顺序输出。oqp100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

样例

输入

5

输出

I 7
V 2

提示

Preface Numberingoqp100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

A certain book's prefaces are numbered in upper case Roman numerals. Traditional Roman numeral values use a single letter to represent a certain subset of decimal numbers. Here is the standard set:oqp100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

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

As many as three of the same marks that represent 10n may be placed consecutively to form other numbers:oqp100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

III is 3 CCC is 300 Marks that have the value 5x10n are never used consecutively.oqp100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

Generally (with the exception of the next rule), marks are connected together and written in descending order to form even more numbers:oqp100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

CCLXVIII = 100+100+50+10+5+1+1+1 = 268 Sometimes, a mark that represents 10^n is placed before a mark of one of the two next higher values (I before V or X; X before L or C; etc.). In this case, the value of the smaller mark is SUBTRACTED from the mark it precedes:oqp100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

IV = 4 IX = 9 XL = 40 This compound mark forms a unit and may not be combined to make another compound mark (e.g., IXL is wrong for 39; XXXIX is correct). Compound marks like XD, IC, and XM are not legal, since the smaller mark is too much smaller than the larger one. For XD (wrong for 490), one would use CDXC; for IC (wrong for 99), one would use XCIX; for XM (wrong for 990), one would use CMXC. 90 is expressed XC and not LXL, since L followed by X connotes that successive marks are X or smaller (probably, anyway).oqp100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

Given N (1 <= N < 3,500), the number of pages in the preface of a book, calculate and print the number of I's, V's, etc. (in order from lowest to highest) required to typeset all the page numbers (in Roman numerals) from 1 through N. Do not print letters that do not appear in the page numbers specified.oqp100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

If N = 5, then the page numbers are: I, II, III, IV, V. The total number of I's is 7 and the total number of V's is 2.oqp100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

PROGRAM NAME: preface INPUT FORMAT A single line containing the integer N. SAMPLE INPUT (file preface.in) 5oqp100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

OUTPUT FORMAT The output lines specify, in ascending order of Roman numeral letters, the letter, a single space, and the number of times that letter appears on preface page numbers. Stop printing letter totals after printing the highest value letter used to form preface numbers in the specified set. SAMPLE OUTPUT (file preface.out) I 7 V 2oqp100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

答案解析

相关题目

广播操比赛 描述 你是某高中广播操比赛的记分员,在全校统一比赛中你需要给各个班级计分并统计最终分数和排名。 由于裁判们打分速度不一样,你会以任意顺序收到各个裁判给各个班级打分的情况。 每一条打分包
序言页码 一类书的序言是以罗马数字标页码的。传统罗马数字用单个字母表示特定的数值,一下是标准数字表: I 1 L 50 M 1000 V 5 C 100 X 10 D 500 最多3个可以表示为1
海明码 给出 N,B 和 D:找出 N 个编码(1 <= N <= 64),每个编码有 B 位(1 <= B <= 8),使得两两编码之间至少有 D 个单位的“海明距离”(1
健康的好斯坦奶牛 农民JOHN以拥有世界上最健康的奶牛为骄傲。他知道每种饲料中所包含的的牛所需的最低的维他命量是多少。请你帮助农夫喂养他的牛,以保持他们的健康,使喂给牛的饲料的种数最少。 给出牛所需的
三值的排序 排序是一种很频繁的计算任务。现在考虑最多只有三值的排序问题。一个实际的例子是,当我们给某项竞赛的优胜者按金银铜牌序的时候。 在这个任务中可能的值只有三种1,2和3。我们用交换的方法把他排
跳棋的挑战 检查一个如下的6 x 6的跳棋棋盘,有六个棋子被放置在棋盘上,使得每行,每列,每条对角线(包括两条主对角线的所有对角线)上都至多有一个棋子。 列号 1 2 3 4 5 6 1 | |
数字金字塔 考虑在下面被显示的数字金字塔。 写一个程序来计算从最高点开始在底部任意处结束的路径经过数字的和的最大。 每一步可以走到左下方的点也可以到达右下方的点。 7 3 8 8 1 0 2 7
母亲的牛奶 农民约翰有三个容量分别是A,B,C升的桶,A,B,C分别是三个从1到20的整数,最初,A和B桶都是空的,而C桶是装满牛奶的。有时,约翰把牛奶从一个桶倒到另一个桶中,直到被灌桶装满或原桶空了
等差数列 一个等差数列是一个能表示成a, a+b, a+2b,..., a+nb (n=0,1,2,3,...) 在这个问题中a是一个非负的整数,b是正整数。 写一个程序来找出在双平方数集合S中长度为
修理牛棚 在一个暴风雨的夜晚,农民约翰的牛棚的屋顶、门被吹飞了。 好在许多牛正在度假,所以牛棚没有住满。 剩下的牛一个紧挨着另一个被排成一行来过夜。 有些牛棚里有牛,有些没有。 所有的牛棚有相同的宽度

提示声明

  • 免责声明:本站资源均来自网络或者用户投稿,仅供用于学习和交流:如有侵权联系删除!
  • 温馨提示:本文属于积分文章,需要充值获得积分或升级VIP会员,也可在会员中心投稿获取。

猜你喜欢