2014noip复赛模拟练习16
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1. 喜羊羊运动会——训练时间。题目描述:这次运动会开幕式要进行团体操表演,于是喜羊羊召集大家紧锣密鼓地训练了起来,懒羊羊也在被召集之列。喜羊羊规定了每天的训练时间,只准早到,不许迟到,而且喜羊羊会做相关记录。这下懒羊羊可惨了,他虽然设定了闹钟,可是他动作慢,老迟到。现给出若干天的规定到场时间与懒羊羊的到场时间记录,判断每天懒羊羊有无及时赶到训练场,以及迟到或早到的时间。
输入:文件名timer1.in每两行时间为一组,每组中的第一行时间为规定的训练时间,第二行为懒羊羊到达训练场的时间。每行有两个整数H和M,H是以24小时记时法表示的小时数(0 <= H <= 24),M表示分钟数(0 <= M <= 59)。每组中的两个时间表示的是同一天的两个时间。若干组时间后以-1表示结束。
输出:timer1.out若干行,如果这一天懒羊羊及时到达了训练场,则输出‘Yes’及早到的分钟数;如果没有及时到达,则输出‘No’及迟到的分钟数。
样例输入:14 30↙14 25↙8 0↙9 0↙13 10↙12 50↙7 25↙7 25↙-1
样例输出:Yes 5↙No 60↙Yes 20↙Yes 0
提示:输入输出说明:第一天第二天第三天第四天
规定训练时间14:30 8:00 13:10 7:25
到场时间14:25 9:00 12:50 7:25
有无及时到达Yes No Yes Yes
早到或迟到分钟数 5 60 20 0
2.题目描述:懒羊羊在前一阵准备羊村的小高考复习时表现出了罕见的勤奋,现在他得知了小高考四门必修课的成绩,他想知道根据羊村的高考政策,他在羊村高考中能加几分。羊村高考政策如下:
分数段等级
成绩>=90 A
90>成绩>=75 B
75>成绩>=60 C
成绩<60 D
每得一个A,可在羊村高考中加1分,若得4A,则可以加5分。当然,只要有一门功课得D,那么就将失去羊村高考资格。
输入:仅有一行,4个不大于100的非负整数,相邻两数之间用空格隔开。
输出:仅有一行,若有D级存在,则输出“Poor LanYangYang”(引号不输出,注意大小写);否则输出懒羊羊在羊村高考中的加分。
样例输入:输入样例1:100 95 89 94 输入样例2:0 0 0 0
样例输出:输出样例1:3 输出样例2:Poor LanYangYang
3. NASA(美国航空航天局)因为航天飞机的隔热瓦等其他安全技术问题一直大伤脑筋,因此在各方压力下终止了航天飞机的历史,但是此类事情会不会在以后发生,谁也无法保证,在遇到这类航天问题时,解决方法也许只能让航天员出仓维修,但是多次的维修会消耗航天员大量的能量,因此NASA便想设计一种食品方案,让体积和承重有限的条件下多装载一些高卡路里的食物. 航天飞机的体积有限,当然如果载过重的物品,燃料会浪费很多钱,每件食品都有各自的体积、质量以及所含卡路里,在告诉你体积和质量的最大值的情况下,请输出能达到的食品方案所含卡路里的最大值,当然每个食品只能使用一次.
【输入格式】第一行两个数体积最大值(<400)和质量最大值(<400)第二行一个数食品总数N(<50).第三行-第3+N行每行三个数体积(<400) 质量(<400) 所含卡
路里(<500)
【输出格式】一个数所能达到的最大卡路里(int范围内)
【样例输入】320 350↙4↙160 40 120↙80 110 240↙220 70 310↙40 400 220
【样例输出】550
4. 题目描述:一天,CC买了N个容量可以认为是无限大的瓶子,开始时每个瓶子里有1升水。接着~~CC发现瓶子实在太多了,于是他决定保留不超过K个瓶子。每次他选择两个当前含水量相同的瓶子,把一个瓶子的水全部倒进另一个里,然后把空瓶丢弃。(不能丢弃有水的瓶子)显然在某些情况下CC无法达到目标,比如N=3,K=1。此时CC会重新买一些新的瓶子(新瓶子容量无限,开始时有1升水),以到达目标。现在CC想知道,最少需要买多少新瓶子才能达到目标呢?输入文件(Water.in):一行两个正整数,N,K(1<=N<=10^9,K<=1000)。
输出文件(Water.out):一个非负整数,表示最少需要买多少新瓶子。
输入样例1:3 1 输出样例1:1
输入样例2:13 2 输出样例2:3
输入样例3:1000000 5 输出样例3:15808
5. 给定一个十进制正整数n,它的递归变幻数定义如下:
1).如果n的位数多于1位(忽略前置的0),将n的各个位上的数相乘,乘积为m。称m为n的子变幻数,n称为m的父变幻数。求一个数的变幻数等于求其子变幻数。即求n的变幻数等于求m的变幻数。
2).如果n的位数只有一位,n的变幻数即为它本身。
如求679的变幻数过程为:679 -> 378(=6*7*9) -> 168(=3*7*8) -> 48(=1*6*8) -> 32(=4*8) -> 6(=2*3),所以679的变幻数为6。
现在的问题是给定一个子变幻数k,问k的父变幻数最小是多少?
如:k=18,则k的父变幻数可以是29,也可以是92。但最小为29。
数据输入:一个子变幻数k(位数小于1000)。
数据输出:k的最小父变幻数。
当不存在父变幻数时请输出“There is no such number!”,输出结果不含引号。
样例输入:48 样例输出:68
6. 对信息进行加密,可提高信息传输的安全性。正是由于它的重要用途,人们发明了各种各样的加密方式。其中一种方式是,对文中单词进行逆序处理。请你写一个程序,对已加密的文本进行解密。
输入文件(encrypt.in):第1行,一个整数n,表示后面将有n行已加密的信息。第2行至第n+1行,每行一个不超过1000个字符的字符串,每个字符串中只有空格和小写字母组成。
输出文件(encrypt.out):共n行,每行对应输出解密后的文本。
输入样例:encrypt.in
2
eno owt eerht
i ekil siht emag
输出样例:encrypt.out
one two three
i like this game
数据范围:n<= 50,000