NOIP2011模拟题1
- 格式:pdf
- 大小:61.81 KB
- 文档页数:5
冲刺NOIP2011模拟试题2011年7月题目名称源文件名输入输出文件名时间限制空间限制水晶双塔tower.pas tower.in/.out 1S 64M素数密度prime.pas Prime.in/.out1S 64M数页码count.pas Count.in/.out1S 64M观光旅游trip.pas trip.in/.out 1S 64M水晶双塔【题目描述】2001年9月11日,一场突发的灾难将纽约世界贸易中心大厦夷为平地,Mr. F曾亲眼目睹了这次灾难。
为了纪念“911”事件,Mr. F决定自己用水晶来搭建一座双塔。
Mr. F有N块水晶,每块水晶有一个高度,他想用这N块水晶搭建两座有同样高度的塔,使他们成为一座双塔,Mr. F可以从这N块水晶中任取M(1≤M≤N)块来搭建。
但是他不知道能否使两座塔有同样的高度,也不知道如果能搭建成一座双塔,这座双塔的最大高度是多少。
所以他来请你帮忙。
给定水晶的数量N(1≤N≤100)和每块水晶的高度Hi(N块水晶高度的总和不超过2000),你的任务是判断Mr. F能否用这些水晶搭建成一座双塔(两座塔有同样的高度),如果能,则输出所能搭建的双塔的最大高度,否则输出“Impossible”。
【输入格式】第一行为一个数N,表示水晶的数量。
第二行为N个数,第i个数表示第i个水晶的高度。
【输出格式】输出仅包含一行,如果能搭成一座双塔,则输出双塔的最大高度,否则输出一个字符串“Impossible”。
【输入样例】51 3 4 5 2【输出样例】7【题目描述】给定区间[L, R](L <= R <= 2147483647,R-L <= 1000000),请计算区间中素数的个数。
【输入格式】两个数L和R。
【输出格式】一行,区间中素数的个数。
【输入样例】2 11【输出样例】5数页码【题目描述】一本书的页码是从1-n编号的连续整数:1, 2, 3, ... , n。
NOIP 2011初赛模拟训练题(Pascal 语言二小时完成)●●全部试题答案均要求写在答卷纸上,写在试卷纸上一律无效●●一、单项选择题(共10题,每题1.5分,共计15分。
每题有且仅有一个正确答案)。
1、微型计算机中,( ) 的存取速度最快。
A.高速缓存B.外存储器C. 寄存器D. 内存储器E. 临时存储器2、已知A=35H,则A∧05H∨A∧3OH的结果是:( ) 。
A)3OH B)05H C) 32H D) 53H E)35H3、GB2312-80规定了一级汉字3755个,二级汉字3008个,其中二级汉字字库中的汉字是以()为序排列的。
A.以笔划多少B.以部首C.以ASCⅡ码D.以机内码E.以拼音4、在config.sys文件中,装入特定的可安装设备驱动程序的命令是().A.buffer B.files C.xcopy D.device E. load5、启动计算机引导DOS是将操作系统()A. 从磁盘调入中央处理器B. 从内存储器调入高速缓冲存储器C. 从软盘调入硬盘D. 从系统盘调入内存储器E. 从系统盘调入中央处理器6、Ip v6地址是由( ) 位二进制数码表示的。
A.16 B.32 C. 128 D. 64 E. 87、设有一个含有13个元素的Hash表(0~12),Hash函数是:H(key)=key % 13,其中% 是求余数运算。
用线性探查法解决冲突,则对于序列(2、8、31、20、19、18、53、27),18应放在第几号格中( ) 。
A. 9B.5C. 4D. 0E. 78、在有N个叶子节点的哈夫曼树中,其节点总数为()A.不确定B. 2N-1C. 2N+1D. 2NE. N+19、表达式(1+34)*5-56/7 的后缀表达式为()。
A. 1+34*5-56/7B. -*+1 34 5/56 7C. 1 34 +5*56 7/-D. 1 34 5* +56 7/-E. 1 34+5 56 7-*/10、计算机软件保护法是用来保护软件( )的。
NOIP2011模拟试题及解析128MClass(class.pas/c/cpp)【问题描述】信息班这期的课将要结束了,老师要从现在班上的同学中选出比较优秀的同学进入下一期的学习。
而录取标准则是将平时作业和考试一起考虑,综合成绩排在前面的则录取。
经过一番思考,老师作了以下的筛选计划:1、设计两个参数x,y,学生总成绩为平时成绩的x%和考试成绩的y%。
2、将同学按总成绩排名,招收总成绩在前15的学生,不够15则全部录取。
注:总成绩在第15的如果有多人,则可以被同时录取。
例如:18个人总成绩从大到小依次为95,93,93,88,87,84,80,75,70,68,66,65,60,58,57,57,56,55。
那么93,93同为第2名,而88为第4名,57,57同为第15名,都被录取。
而56,55则不被录取。
老师因为招生培训的事情很忙,所以现在她把信息班学生的成绩表给了你,希望你能告诉她哪些同学被录取了。
【输入】输入文件class.in第一行有三个数N,x,y。
表示信息班有N个同学以及参数x,y。
第二行N个数,分别为A1,A2,A3 … AN。
Ai表示编号为i的同学的平时成绩。
第三行N个数,分别为B1,B2,B3 … BN。
Bi表示编号为i的同学的考试成绩。
【输出】输出文件class.out共一行,为被录取同学的编号,按照升序输出。
【输入输出样例】【数据说明】1<=N<=1000<=x,y<=1000<=平时成绩,考试成绩<=100以上数据皆为整数模拟。
首先求出所有人的总分,然后进行快排(注意第15名的并列情况),人数小于15时,输出1到n;否则将入围人员的编号进行排序升序输出。
程序如下:program zk;varp,k,h,zong:array [0..200] of longint;i,j,a,b,c,n,x,y,xian,f:longint;procedure qsort(x,y:longint);varxo,yo,zz,mid,z:longint;beginxo:=x; yo:=y;mid:=zong[(xo+yo) div 2];repeatwhile zong[xo]>mid do inc(xo);while zong[yo]<mid do dec(yo);if xo<=yo thenbeginz:=zong[xo];zong[xo]:=zong[yo];zong[yo]:=z;zz:=h[xo];h[xo]:=h[yo];h[yo]:=zz;inc(xo); dec(yo);end;until xo>yo;if x<yo then qsort(x,yo);if xo<y then qsort(xo,y);end;procedure qsorth(x,y:longint); varxo,yo,zz,mid,z:longint;beginxo:=x; yo:=y;mid:=h[(xo+yo) div 2]; repeatwhile h[xo]<mid do inc(xo);while h[yo]>mid do dec(yo);if xo<=yo thenbeginzz:=h[xo];h[xo]:=h[yo];h[yo]:=zz;inc(xo); dec(yo);end;until xo>yo;if x<yo then qsorth(x,yo);if xo<y then qsorth(xo,y); end;beginassign(input,'class.in'); assign(output,'class.out'); reset(input);rewrite(output);readln(n,x,y);for i:=1 to n doread(p[i]);readln;for i:=1 to n dobeginh[i]:=i;read(k[i]);end;for i:=1 to n dozong[i]:=p[i]*x+k[i]*y;qsort(1,n);xian:=15;if n>=15 thenbeginf:=zong[xian];while zong[xian+1]=f doxian:=xian+1;endelse xian:=n;qsorth(1,xian);for i:=1 to xian dowrite(h[i],' ');close(input);close(output);end.Clean(clean.pas/c/cpp)【问题描述】最近甲型H1N1流感病毒肆虐。
第十七届全国青少年信息学奥林匹克联赛初赛试题(NOIP 2011)(普及组Pascal 语言两小时完成)一、单项选择题(共20 题,每题1.5 分,共计30 分。
每题有且仅有一个正确选项。
)1、在二进制下,1101001 + ()= 1110110。
A、1011B、1101C、1010D、11112、字符“0”的ASCII 码为48,则字符“9”的ASCII 码为()。
A、39B、57C、120D、视具体的计算机而定3、一片容量为8GB 的SD 卡能存储大约()张大小为2MB 的数码照片。
A、1600B、2000C、4000D、160004、摩尔定律(Moore's law)是由英特尔创始人之一戈登·摩尔(Gordon Moore)提出来的。
根据摩尔定律,在过去几十年以及在可预测的未来几年,单块集成电路的集成度大约每()个月翻一番。
A、1B、6C、18D、365、无向完全图是图中每对顶点之间都恰有一条边的简单图。
已知无向完全图G 有7 个顶点,则它共有()条边。
A、7B、21C、42D、496、寄存器是()的重要组成部分。
A、硬盘B、高速缓存C、内存D、中央处理器(CPU)7、如果根结点的深度记为1,则一棵恰有2011 个叶结点的二叉树的深度最少是()。
A、10B、11C、12D、138、体育课的铃声响了,同学们都陆续地奔向操场,按老师的要求从高到矮站成一排。
每个同学按顺序来到操场时,都从排尾走向排头,找到第一个比自己高的同学,并站在他的后面。
这种站队的方法类似于()算法。
A、快速排序B、插入排序C、冒泡排序D、归并排序9、一个正整数在二进制下有100 位,则它在十六进制下有()位。
A、7B、13C、25D、不能确定10、有人认为,在个人电脑送修前,将文件放入回收站中就是已经将其删除了。
这种想法是()。
A、正确的,将文件放入回收站意味着彻底删除、无法恢复B、不正确的,只有将回收站清空后,才意味着彻底删除、无法恢复C、不正确的,即使将回收站清空,文件只是被标记为删除,仍可能通过恢复软件找回D、不正确的,只要在硬盘上出现过的文件,永远不可能被彻底删除11、广度优先搜索时,需要用到的数据结构是()。
NOIP2011初赛模拟试题一、选择题:(本题共20题,每题1.5分,共计30分1、在计算机内部用来传送、存贮、加工处理的数据或指令都是以(形式进行的。
A、二进制码B、八进制码C、十进制码D、智能拼音码2、计算机的软件系统通常分为(A、硬件系统和软件系统B、高级软件和一般软件C、系统软件和应用软件D、军用软件和民用软件3、关于软盘读写孔,正确的说法是(。
A.从该孔读信息B.从该孔写信息C.当该孔处于开状态时,不能删除盘中文件。
D.该孔没有作用4、一棵二叉树的中序遍历为DGBAECHF,后序遍历为GDBEHFCA,则前序遍历是(A、ABCDFGHEB、ABDGCEFHC、ACBGDHEFD、ACEFHBGD5、下列叙述中错误的是(。
A、微机应避免置于强磁场之中B、微机使用时间不宜过长,而应隔几个小时关机一次C、微机应避免频繁关开,以延长其使用寿命D、微机应经常使用,不宜长期闲置不用6、计算机网络最主要的优点是(。
A、运算速度快B、共享资源C、精度高D、存储容量大7、下列4个不同进制表示的数中,最大的一个数是(A、(220.110B、(11011011.12C、(334.18D、(DC.1 168、为了区分汉字与ASCII码,计算机中汉字编码的最高位为(A、1B、0C、-1D、29、下列不正确的文件名是(。
A. command。
ComB. command_comC. command,comD. command:com10、一般来说,TCP/IP的IP提供的服务是(A.运输层服务B.会话层服务C.表示层服务D.网络层服务11、通信时,模拟信号也可以用数字信道来传输,能实现模拟信号与数字信号之间转换功能的是(A、D/AB、A/DC、ModemD、Codec12、一个栈的输入顺序为1、2、3、4、5,下列序列中可能是栈的输出序列是(。
A、54312B、24135C、21543D、1253413、不属于Internet的功能是(A、聊天B、远程教育C、查询资料D、传送能量14、下列描述计算机病毒的特性中,(不是正确的。
冲刺NOIP2011模拟试题1.单词分类(word.c/cpp)[问题描述]Oliver为了学好英语决定苦背单词,但很快他发现要直接记住杂乱无章的单词非常困难,他决定对单词进行分类。
两个单词可以分为一类当且仅当组成这两个单词的各个字母的数量均相等。
例如“AABAC”,它和“CBAAA”就可以归为一类,而和“AAABB”就不是一类。
现在Oliver有N个单词,所有单词均由大写字母组成,每个单词的长度不超过100。
你要告诉Oliver 这些单词会被分成几类。
[输入格式]输入文件的第一行为单词个数N,以下N行每行为一个单词。
[输出格式]输出文件仅包含一个数,表示这N个单词分成的类数。
[样例输入]3AABACCBAAAAAABB[样例输出]2[数据范围]对于70%的数据满足N≤100。
对于100%的数据满足N≤10000。
2.过河问题(river.c/cpp)[问题描述]有一个大晴天,Oliver与同学们一共N人出游,他们走到一条河的东岸边,想要过河到西岸。
而东岸边有一条小船。
船太小了,一次只能乘坐两人。
每个人都有一个渡河时间T,船划到对岸的时间等于船上渡河时间较长的人所用时间。
现在已知N个人的渡河时间T,Oliver想要你告诉他,他们最少要花费多少时间,才能使所有人都过河。
注意,只有船在东岸(西岸)的人才能坐上船划到对岸。
[输入格式]输入文件第一行为人数N,以下有N行,每行一个数。
第i+1行的数为第i个人的渡河时间。
[输出格式]输出文件仅包含一个数,表示所有人都渡过河的最少渡河时间。
[样例输入]4671015[样例输出]42[样例解释]初始:东岸{1,2,3,4},西岸{}第一次:东岸{3,4},西岸{1,2} 时间7第二次:东岸{1,3,4},西岸{2} 时间6第三次:东岸{1},西岸{2,3,4},时间15第四次:东岸{1,2},西岸{3,4} 时间7第五次:东岸{},西岸{1,2,3,4} 时间7所以总时间为7+6+15+7+7=42,没有比这个更优的方案。
1.数字反转(reverse.pas)【问题描述】给定一个整数,请将该数各个位上数字反转得到一个新数。
新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零。
(参见样例2)【输入】输入文件名为reverse.in。
输入共一行,一个整数n。
【输出】输出文件名为reverse.out。
输出共一行,一个整数,表示反转后的新数。
【输入输出样例1】reverse.in reverse.out123 321【输入输出样例2】reverse.in reverse.out-380 -83【数据范围】-1,000,000,000≤N≤1,000,000,000。
2.统计单词数(stat.in)【问题描述】一般的文本编辑器都有查找单词的功能,该功能可以快速定位特定单词在文章中的位置,有的还能统计出特定单词在文章中出现的次数。
现在,请你编程实现这一功能,具体要求是:给定一个单词,请你输出它在给定的文章中出现的次数和第一次出现的位置。
注意:匹配单词时,不区分大小写,但要求完全匹配,即给定单词必须与文章中的某一独立单词在不区分大小写的情况下相同(参见样例1),如果给定单词仅是文章中某一单词的一部分则不算匹配(参见样例2)。
【输入】输入文件名为stat.in,2行。
第一行为一个字符串,其中只含字母,表示给定单词;第二行为一个字符串,其中只能包含字母和空格,表示给定的文章。
【输出】输出文件名为stat.out。
只有一行,如果在文章中找到给定单词则输出两个整数,两个整数之间用一个空格隔开,分别是单词在文章中出现的次数和第一次出现的位置(即在文章中第一次出现时,单词首字母在文章中的位置,位置从0开始);如果单词在文章中没有出现,则直接输出一个整数-1。
【输入输出样例1】stat.in stat.outTo 2 0to be or not to be is a question【输入输出样例1说明】输出结果表示给定的单词To在文章中出现两次,第一次出现的位置为0.【输入输出样例2】stat.in stat.outto -1 Did the Ottoman Empire lose its power at that time【输入输出样例2说明】表示给定的单词to在文章中没有出现,输出整数-1.【数据范围】1≤单词长度≤10。
NOIP2011模拟赛
2011年7月
题目名称Rabbit Number Play with Power Step Color the Axis 提交文件rabbit.*play.*step.*axis.*
输入文件rabbit.in play.in step.in axis.in
输出文件rabbit.out play.out step.out axis.out
时间限制1秒1秒1秒1秒
内存限制256MB256MB256MB256MB 注:请提交源程序,测试时以源代码为准。
1Rabbit Number
1.1题目描述
设S(N)表示N的各位数字之和,如S(484)=4+8+4=16,S(22)=2+2=4。
如果一个正整数满足S(x∗x)=S(x)∗S(x),我们称之为Rabbit Number。
比方说,22就是一个Rabbit Number,因为S(484)=S(22)∗S(22)。
现在,给出一个区间[L,R],求在该区间内的Rabbit Number的个数。
1.2输入格式
输入仅一行,为空格隔开的两个数L和R。
1.3输出格式
输出仅一行一个整数,表示所求Rabbit Number的个数。
1.4数据限制
1≤L≤R≤109
1.5样例数据
rabbit.in rabbit.out
22221
4844840
15812
5848424
100000000010000000001
2Play with Power
2.1题目描述
Masha和Stas正在玩一个游戏。
在游戏的开始,给出一个定值N,同时有两个正整数A和B,初始时满足A B≤N。
Masha先手。
每一回合,玩家要将A和B的其中一个数加上1,但不能令到A B>N,否则该玩家输。
现在,Masha想知道假如两人都使用最优策略,对于一个特定的N,不同的A、B的初始值谁将获胜呢?
2.2输入格式
输入第一行为一个正整数N。
输入第二行为一个正整数T,表示测试数据个数。
下面T行,每行有两个正整数A i、B i,描述了一组测试数据<A i,B i,N>,含义如题目描述。
2.3输出格式
对每组数据输出一行。
如果先手Masha获胜,输出"Masha";如果后手Stas获胜,输出"Stas";如果和则输出"Missing"(不用输出引号)。
2.4数据限制
对30%的数据有1≤N≤2000;
对100%的数据有:
1≤N≤108
1≤T≤100
≤N
1≤A i,1≤B i,A B i
i
2.5样例数据
play.in play.out
9Masha
2Missing
22
14
16807Masha
3Missing
55Stas
1100
1001
3Stas
1
31
3Step
3.1题目描述
春节的时候小红去逛花市。
她来到一个卖盆竹的摊位,看到一盆叫做“步步高升”的盆竹。
“步步高升,步步高升……”学习就是要一步一步来,不能急,要打好基础。
在稳固的基础上才谈得上步步高升!小红若有所思。
她看到这盆东西好意头,于是想买下。
谁知一问价钱,“不贵不贵,才2XXRMB。
”小红差点没昏倒,囊中羞涩嘛。
但是小红还是很想买下来,于是她就在一旁观察。
观察了一段时间,她发现这个卖盆竹的人和别人杀价很有规律。
设此人第i次报价为Wi元,那么他第i+1次报的价格为Wi-A或Wi-B。
到了最后,小红以Z元成交,高高兴兴的回家去了。
求小红把盆竹的价格由W1元杀到Z元的方法总数。
3.2输入格式
第一行有两个正整数W1和Z。
第二行有两个正整数A和B。
它们满足条件:
10≤W1≤106,1≤Z≤106,Z<W1,2≤A、B≤10000,A≠B 3.3输出格式
直接把所求得的方法总数。
注意:结果不超过MAXLONGINT
3.4样例数据
step.in step.out
256883889832
59
100100
1323
4Color the Axis
4.1题目描述
在一条数轴上有N个点,分别是1~N。
一开始所有的点都被染成黑色。
接着我们进行M次操作,第i次操作将[L i,R i]这些点染成白色。
请输出每个操作执行后剩余黑色点的个数。
4.2输入格式
输入一行为N和M。
下面M行每行两个数L i、R i。
4.3输出格式
输出M行,为每次操作后剩余黑色点的个数。
4.4数据限制
对30%的数据有1≤N≤2000,1≤M≤2000;
对100%的数据有1≤L i≤R i≤N≤200000,1≤M≤200000;
4.5样例数据
axis.in axis.out
1039
336
573
28。