NOIP2002普及组(复赛)

NOIP2002普及组(复赛)
NOIP2002普及组(复赛)

2002年全国青少年信息学(计算机)奥林匹克分区联赛复赛试题

(普及组竞赛用时:3 小时)

题一级数求和(存盘名:NOIPC1)

[问题描述]:

已知:Sn= 1+1/2+1/3+…+1/n。显然对于任意一个整数K,当n足够大的时候,Sn大于K。

现给出一个整数K(1<=k<=15),要求计算出一个最小的n;使得Sn>K。

[输入]

键盘输入 k

[输出]

屏幕输出 n

[输入输出样例]

输人:1

输出:2

题二选数(存盘名:NOIPC2)

[问题描述]:

已知 n 个整数 x1,x2,…,xn,以及一个整数 k(k<n)。从 n 个整数中任选 k 个整数相加,可分别得到一系列的和。例如当 n=4,k=3,4 个整数分别为 3,7,12,19 时,可得全部的组合与它们的和为:3+7+12=22 3+7+19=29 7+12+19=38 3+12+19=34。

现在,要求你计算出和为素数共有多少种。

例如上例,只有一种的和为素数:3+7+19=29)。

[输入]:

键盘输入,格式为:

n , k (1<=n<=20,k<n)

x1,x2,…,xn (1<=xi<=5000000)

[输出]:

屏幕输出,格式为:

一个整数(满足条件的种数)。

[输入输出样例]:

输入:

4 3

3 7 12 19

输出:

1

[问题描述]:

给出一个整数 n(n<10^30) 和 k 个变换规则(k<=15)。

规则:

一位数可变换成另一个一位数:

规则的右部不能为零。

例如:n=234。有规则(k=2):

2-> 5

3-> 6

上面的整数 234 经过变换后可能产生出的整数为(包括原数): 234

534

264

564

共 4 种不同的产生数

问题:

给出一个整数 n 和 k 个规则。

求出:

经过任意次的变换(0次或多次),能产生出多少个不同整数。

仅要求输出个数。

[输入]:

键盘输人,格式为:

n k

x1 y1

x2 y2

... ...

xn yn

[输出]:

屏幕输出,格式为:

一个整数(满足条件的个数):

[输入输出样例]:

输入:

234 2

2 5

3 6

输出:

4

[问题描述]:

如图,A 点有一个过河卒,需要走到目标 B 点。卒行走规则:可以向下、或者向右。同时在棋盘上的任一点有一个对方的马(如上图的C点),该马所在的点和所有跳跃一步可达的点称为对方马的控制点。例如上图 C 点上的马可以控制 9 个点(图中的P1,P2 … P8 和 C)。卒不能通过对方马的控制点。

棋盘用坐标表示,A 点(0,0)、B 点(n,m)(n,m 为不超过 20 的整数,并由键盘输入),同样马的位置坐标是需要给出的(约定: C<>A,同时C<>B)。现在要求你计算出卒从 A 点能够到达 B 点的路径的条数。

[输入]:

键盘输入

B点的坐标(n,m)以及对方马的坐标(X,Y){不用盘错}

[输出]:

屏幕输出

一个整数(路径的条数)。

[输入输出样例]:

输入:

6 6 3 2

输出:

17

noip普及组复赛模拟试题26(答案)

1.数字反转(reverse.cpp/c/pas)【问题描述】给定一个整数,请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零(参见样例2)。【输入】输入文件名为reverse.in。 输入共 1 行,一个整数N。 【输出】输出文件名为reverse.out。 输出共 1 行,一个整数,表示反转后的新数。 【输入输出样例1】reverse.in reverse.out 123 321 【输入输出样例2】Reverse.in reverse.out -380 -83 【数据范围】-1,000,000,000 ≤N≤1,000,000,000。 var s3,s1,s2:string; n,i:integer; begin assign(input,'reverse.in');reset(input); assign(output,'reverse.out');rewrite(output); read(s1); n:=length(s1); if s1[1]='-' then begin s2:='-'; for i:=1 to n-1 do s1[i]:=s1[i+1]; delete(s1,n,1); end; n:=length(s1); for i:=1 to n do s3:=s3+s1[n-i+1]; i:=1; while(s3[i]='0')and(length(s3)>1) do delete(s3,1,1); write(s2+s3); close(input);close(output); end. 2.统计单词数(stat.cpp/c/pas)【问题描述】一般的文本编辑器都有查找单词的功能,该功能可以快速定位特定单词在文章中的位置,有的还能统计出特定单词在文章中出现的次数。 现在,请你编程实现这一功能,具体要求是:给定一个单词,请你输出它在给定的文章 中出现的次数和第一次出现的位置。注意:匹配单词时,不区分大小写,但要求完全匹配, 即给定单词必须与文章中的某一独立单词在不区分大小写的情况下完全相同(参见样例1), 如果给定单词仅是文章中某一单词的一部分则不算匹配(参见样例2)。 【输入】输入文件名为stat.in,2 行。 第 1 行为一个字符串,其中只含字母,表示给定单词; 第 2 行为一个字符串,其中只可能包含字母和空格,表示给定的文章。

NOIP2013普及组初赛试题

2013年第十九届全国青少年信息学奥林匹克联赛初赛 普及组 Pascal 语言试题 一、单项选择题(共 20 题,每题 1.5 分,共计 30 分;每题有且仅有一个正确选项) 1. 一个 32 位整型变量占用( A )个字节。 A. 4 B. 8 C. 32 D. 128 2. 二进制数 11.01 在十进制下是(A )。 A. 3.25 B. 4.125 C. 6.25 D. 11.125 3. 下面的故事与( B )算法有着异曲同工之妙。 从前有座山,山里有座庙,庙里有个老和尚在给小和尚讲故事:“从前有座山,山里有座庙,庙里有个老和尚在给小和尚讲故事:‘从前有座山,山里有座庙,庙里有个老和尚给小和尚讲故事........................’” A. 枚举 B. 递归 C. 贪心 D. 分治 4. 逻辑表达式()的值与变量 A 的真假无关。 A. (A ? B) ??A B. (A ? B) ??B C. (A ? B) ?(?A ? B) D. (A ? B) ??A ? 5. 将(2, 6, 10, 17)分别存储到某个地址区间为 0~10 的哈希表中,如果哈希函数h(x) =( D ),将不会产生冲突,其中 a mod b 表示 a 除以 b 的余数。 A. x mod 11 B. x2 mod 11 C. 2x mod 11 D. [X] mod 11,其中[X]表示X下取整 6. 在十六进制表示法中,字母 A 相当于十进制中的( B )。 A. 9 B. 10 C. 15 D. 16 7. 下图中所使用的数据结构是( B )。 8. 在 Windows 资源管理器中,用鼠标右键单击一个文件时,会出现一个名为“复制”的操作选项,它的意思是( C )。 A. 用剪切板中的文件替换该文件 B. 在该文件所在文件夹中,将该文件克隆一份 C. 将该文件复制到剪切板,并保留原文件 D. 将该文件复制到剪切板,并删除原文件 9. 已知一棵二叉树有 10 个节点,则其中至多有( A )个节点有 2 个子节点。 A. 4 B. 5 C. 6 D. 7 10.在一个无向图中,如果任意两点之间都存在路径相连,则称其为连通图。下图是一个有4 个顶点、6 条边的连通图。若要使它不再是连通图,至少要删去其中的(c )条边。 A. 1 B. 2 C. 3 D. 4 11. 二叉树的(A )第一个访问的节点是根节点。 A. 先序遍历 B. 中序遍历 C. 后序遍历 D. 以上都是 12. 以 A0 作为起点,对下面的无向图进行深度优先遍历时,遍历顺序不可能是( C )。 A. A0, A1, A2, A3 B. A0, A1, A3, A2 C. A0, A2, A1, A3 D. A0, A3, A1, A2 13. IPv4 协议使用 32 位地址,随着其不断被分配,地址资源日趋枯竭。因此,它正逐渐被使用(D )位地址的 IPv6 协议所取代。 A. 40 B. 48 C. 64 D. 128 14. (A )的平均时间复杂度为 O(n log n),其中 n 是待排序的元素个数。 A. 快速排序 B. 插入排序 C. 冒泡排序 D. 基数排序 15. 下面是根据欧几里得算法编写的函数,它所计算的是 a 和 b 的( b )。 function euclid(a, b : longint) : longint;

noip普及组复赛模拟试题18

1. 话说去年苹果们被陶陶摘下来后都很生气,于是就用最先进的克隆技术把陶陶克隆了好多份>.<然后把他们挂在树上,准备摘取。摘取的规则是,一个苹果只能摘一个陶陶,且只能在它所能摘到的高度以下(即是小于关系)的最高的陶陶,如果摘不到的话只能灰溜溜的走开了>.<给出苹果数目及每个苹果可以够到的高度和各个陶陶的高度,求苹果们都摘完后剩下多少个陶陶…… 【输入格式】第一行为两个数,分别为苹果的数量n和陶陶的数量m(n,m<=2000)以下的n行,分别为各个苹果能够到的最大高度。再接下来的m行,分别为各个陶陶的高度。高度均不高于300。 当然了,摘取的顺序按照输入的“苹果够到的最大高度”的顺序来摘。 【输出格式】输出仅有一个数,是剩下的陶陶的数量 【样例输入】5 5↙9↙10↙2↙3↙1↙6↙7↙8↙9↙10 【样例输出】3 2. 某小学最近得到了一笔赞助,打算拿出其中一部分为学习成绩优秀的前5名学生发奖学金。期末,每个学生都有3门课的成绩:语文、数学、英语。先按总分从高到低排序,如果两个同学总分相同,再按语文成绩从高到低排序,如果两个同学总分和语文成绩都相同,那么规定学号小的同学排在前面,这样,每个学生的排序是唯一确定的。 任务:先根据输入的3门课的成绩计算总分,然后按上述规则排序,最后按排名顺序输出前5名学生的学号和总分。注意,在前5名同学中,每个人的奖学金都不相同,因此,你必须严格按上述规则排序。例如,在某个正确答案中,如果前两行的输出数据(每行输出两个数:学号、总分)是:7 279 5 279 这两行数据的含义是:总分最高的两个同学的学号依次是7号、5号。这两名同学的总分都是279(总分等于输入的语文、数学、英语三科成绩之和),但学号为7的学生语文成绩更高一些。如果你的前两名的输出数据是:5 279 7 279则按输出错误处理,不能得分。【输入】输入文件scholar.in包含n+1行: 第1行为一个正整数n,表示该校参加评选的学生人数。 第2到n+1行,每行有3个用空格隔开的数字,每个数字都在0到100之间。第j行的3个数字依次表示学号为j-1的学生的语文、数学、英语的成绩。每个学生的学号按照输入顺序编号为1~n(恰好是输入数据的行号减1)。 所给的数据都是正确的,不必检验。 【输出】输出文件scholar.out共有5行,每行是两个用空格隔开的正整数, 依次表示前5名学生的学号和总分。 【输入输出样例1】 scholar.in scholar.out 6 90 67 80 87 66 91 78 89 91 88 99 77 67 89 64 78 89 98 6 265 4 264 3 258 2 244 1 237 【输入输出样例2】 scholar.in scholar.out 8 80 89 89 8 265 2 264

NOIP2017普及组初赛试题及答案

NOIP2017普及组初赛试题及答案 一、单项选择题(共20题,每题1.5分,共计30分;每题有且仅有一个正确选项) 1.在8位二进制补码中,10101011表示的数是十进制下的( )。 A. 43 B. -85 C. -43 D. -84 2.计算机存储数据的基本单位是( )。 A. bit B. Byte C. GB D. KB 3.下列协议中与电子邮件无关的是( )。 A. POP3 B. SMTP C. WTO D. IMAP 4.分辨率为800x600、16位色的位图,存储图像信息所需的空间为( )。 A.937.5KB B. 4218.75KB C.4320KB D. 2880KB 5.计算机应用的最早领域是( )。 A.数值计算 B.人工智能 C.机器人 D.过程控制 6.下列不属于面向对象程序设计语言的是( )。 A. C B. C++ C. Java D. C# 7.NOI的中文意思是( )。 A.中国信息学联赛

B.全国青少年信息学奥林匹克竞赛 C.中国青少年信息学奥林匹克竞赛 D.中国计算机协会 8. 2017年10月1日是星期日,1999年10月1日是( )。 A.星期三 B.星期日 C.星期五 D.星期二 9.甲、乙、丙三位同学选修课程,从4门课程中,甲选修2门,乙、丙各选修3门,则不同的选修方案共有( )种。 A. 36 B. 48 C. 96 D. 192 10.设G是有n个结点、m条边(n ≤m)的连通图,必须删去G的( )条边,才能使得G变成一棵树。 A.m–n+1 B. m-n C. m+n+1 D.n–m+1 11.对于给定的序列{ak},我们把(i, j)称为逆序对当且仅当i < j且ai> aj。那么 序列1, 7, 2, 3, 5, 4的逆序对数为()个。 A. 4 B. 5 C. 6 D. 7 12.表达式a * (b + c) * d的后缀形式是()。 A. abcd*+* B. abc+*d* C. a*bc+*d D. b+c*a*d 13.向一个栈顶指针为hs的链式栈中插入一个指针s指向的结点时,应执行( )。

NOIP2013第十九届信息学奥林匹克竞赛全国联赛初赛普及组C试题

第十九届全国青少年信息学奥林匹克联赛初赛 普及组C语言试题 竞赛时间:2013年10月13日14:30~16:30 选手注意: ●试题纸共有9页,答题纸共有2页,满分100分。请在答题纸上作答,写在试题纸上的 一律无效。 ●不得使用任何电子设备(如计算器、手机、电子词典等)或查阅任何书籍资料。 一、单项选择题(共20题,每题1.5分,共计30分;每题有且仅有一个正确选项) 1.一个32位整型变量占用()个字节。 A. 4 B. 8 C. 32 D. 128 2.二进制数11.01在十进制下是()。 A. 3.25 B. 4.125 C. 6.25 D. 11.125 3.下面的故事与()算法有着异曲同工之妙。 从前有座山,山里有座庙,庙里有个老和尚在给小和尚讲故事:?从前有座山,山里有座庙,庙里有个老和尚在给小和尚讲故事:‘从前有座山,山里有座庙,庙里有个老和尚给小和尚讲故事....’? A. 枚举 B. 递归 C. 贪心 D. 分治 4.逻辑表达式()的值与变量A的真假无关。 A. (A ? B) ? ?A B. (A ? B) ? ?B C. (A ? B) ? (?A ? B) D. (A ? B) ? ?A ? B 5.将(2, 6, 10, 17)分别存储到某个地址区间为0~10的哈希表中,如果哈希函数h(x) = (),将不会产生冲突,其中a mod b表示a除以b的余数。 A. x mod 11 B. x2 mod 11 C. 2x mod 11 D. ?√ ?mod 11,其中?√ ?表示√下取整 6.在十六进制表示法中,字母A相当于十进制中的()。 A. 9 B. 10 C. 15 D. 16

NOIP2015普及组复赛解题报告

精心整理 NOIP2015普及组解题报告 南京师范大学附属中学树人学校CT 1.金币(coin.cpp/c/pas) 【问题描述】 国王将金币作为工资,发放给忠诚的骑士。第一天,骑士收到一枚金币;之后两天(第二天和第三天) 放模式会一直这样延续下去:当连续N 续N+1天里,每天收到N+1枚金币。 请计算在前K 【输入格式】 输入文件名为coin.in。 输入文件只有1 【数据说明】 对于100%的数据,1≤K≤10,000。 【思路】 模拟 【时空复杂度】 O(k),O(1)

2、扫雷游戏(mine.cpp/c/pas) 【问题描述】 扫雷游戏是一款十分经典的单机小游戏。在n行m列的雷区中有一些格子含有地雷(称之为地雷格),其他格子不含地雷(称之为非地雷格)。玩家翻开一个非地雷格时,该格将会出现一个数字——提示周围格子中有多少个是地雷格。游戏的目标是在不翻出任何地雷格的条件下,找出所有的非地雷格。 现在给出n行m 向上与之直接相邻的格子。 【输入格式】 输入文件名为mine.in。 接下来n行,每行m 雷个数表示非地雷格。相邻字符之间无分隔符。 【数据说明】 对于100%的数据,1≤n≤100,1≤m≤100。 【思路】 模拟 【技巧】

可将数组多开一圈,省去边界条件的判断。【时空复杂度】 O(mn),O(mn)

3.求和(sum.cpp/c/pas) 【问题描述】 一条狭长的纸带被均匀划分出了n个格子,格子编号从1到n。每个格子上都染了一种颜色color i(用[1,m]当中的一个整数表示),并且写了一个数字number i。 定义一种特殊的三元组:(x,y,z),其中x,y,z都代表纸带上格子的编号,这里的三元组要求满足以下两个条件: 1.x,y,z都是整数,x

NOIP初赛普及组C++题目及答案

第二十二届全国青少年信息学奥林匹克联赛初赛 普及组C++语言试题 竞赛时间:2016年10月22日14:30~16:30 选手注意: ● 试题纸共有9页,答题纸共有2页,满分100分。请在答题纸上作答,写在试题纸 上的一律无效。 ● 不得使用任何电子设备(如计算器、手机、电子词典等)或查阅任何书籍资料。一、单项选择题(共20题,每题分,共计30分;每题有且仅有一个正确选 项) 1.以下不是微软公司出品的软件是()。 A. Powerpoint B. Word C. Excel D. AcrobatReader 2. 如果256种颜色用二进制编码来表示,至少需要()位。 A. 6 C. 8 3.以下不属于无线通信技术的是()。 A. 蓝牙 B. WiFi C. GPRS D. 以太网 4. 以下不是CPU生产厂商的是()。 D. IBM A. Intel B. AMD C. Microsoft 5. 以下不是存储设备的是()。 D. 鼠标 A. 光盘 B. 磁盘 C. 固态硬盘 6.如果开始时计算机处于小写输入状态,现在有一只小老鼠反复按照CapsLock、 字母键A、字母键S和字母键D的顺序循环按键,即CapsLock、A、S、D、 CapsLock、A、S、D、……,屏幕上输出的第81个字符是字母()。 A. A C. D D. a 7. 二进制数00101100和00010101的和是()。 A. 00101000 C. 01000100 D. 00111000 8. 与二进制小数相等的八进制数是()。 D. A. 初赛普及组C++语言试题第1页,共9 页

9. 以下是32位机器和64位机器的区别的是()。 A. 显示器不同 B. 硬盘大小不同 C. 寻址空间不同 D. 输入法不同 10. 以下关于字符串的判定语句中正确的是()。 A. 字符串是一种特殊的线性表 B. 串的长度必须大于零 C. 字符串不可以用数组来表示 D. 空格字符组成的串就是空串 11.一棵二叉树如右图所示,若采用顺序存储结构,即用一维 数组元素存储该二叉树中的结点(根结点的下标为1,若 某结点的下标为i,则其左孩子位于下标2i处、右孩子位 于下标(2i+1)处),则图中所有结点的最大下标为 ()。 A.6 B.10 C.12 D.15 12.若有如下程序段,其中s、a、b、c均已定义为整型变量,且a、c均已赋值 (c大于0)。 s=a; for(b=1;b<=c;b++)s=s+1; 则与上述程序段修改s值的功能等价的赋值语句是()。 A.s=a+b; B.s=a+c; C.s=s+c; D.s=b+c; 13.有以下程序: #include usingnamespacestd; intmain(){ intk=4,n=0; while(n。如果L中存在x(i1x i+1>...>x n,则称L是单峰的,并称x i是L的 CCFNOIP2016初赛普及组C++语言试题 第2页,共9页

NOIP2015普及组复赛试题

CCF全国信息学奥林匹克联赛(NOIP2015)复赛 普及组 (请选手务必仔细阅读本页内容) 一、题目概况 中文题目名称金币扫雷游戏求和推销员 coin mine sum salesman 英文题目与子目 录名 可执行文件名coin mine sum salesman 输入文件名coin.in mine.in sum.in salesman.in 输出文件名coin.out mine.out sum.out salesman.out 每个测试点时限1秒 测试点数目10 每个测试点分值10 附加样例文件有 结果比较方式全文比较(过滤行末空格及文末回车) 题目类型传统 运行内存上限128M 二、提交源程序文件名 对于C++语言coin.cpp mine.cpp sum.cpp salesman.cpp 对于C语言coin.c mine.c sum.c salesman.c 对于Pascal语言coin.pas mine.pas sum.pas salesman.pas 四、注意事项: 1、文件名(程序名和输入输出文件名)必须使用英文小写。 2、C/C++中函数main()的返回值类型必须是int,程序正常结束时的返回值必须是0。 3、全国统一评测时采用的机器配置为:CPU AMD Athlon(tm)II x2240processor,2.8GHz,内存4G,上述时限以此配置为准。 4、只提供Linux格式附加样例文件。 5、特别提醒:评测在当前最新公布的NOI Linux下进行,各语言的编译器版本以其为准。

1.金币 (coin.cpp/c/pas) 【问题描述】 国王将金币作为工资,发放给忠诚的骑士。第一天,骑士收到一枚金币;之后两天(第二天和第三天),每天收到两枚金币;之后三天(第四、五、六天),每天收到三枚金币;之后四天(第七、八、九、十天),每天收到四枚金币……;这种工资发放模式会一直这样延续下去:当连续N天每天收到N枚金币后,骑士会在之后的连续N+1天里,每天收到N+1枚金币。 请计算在前K天里,骑士一共获得了多少金币。 【输入格式】 输入文件名为coin.in。 输入文件只有1行,包含一个正整数K,表示发放金币的天数。 【输出格式】 输出文件名为coin.out。 输出文件只有1行,包含一个正整数,即骑士收到的金币数。 【输入输出样例1】 coin.in coin.out 614 见选手目录下的coin/coin1.in和coin/coin1.ans。 【输入输出样例1说明】 骑士第一天收到一枚金币;第二天和第三天,每天收到两枚金币;第四、五、六天,每天收到三枚金币。因此一共收到1+2+2+3+3+3=14枚金币。 【输入输出样例2】 coin.in coin.out 100029820 见选手目录下的coin/coin2.in和coin/coin2.ans。 【数据说明】 对于100%的数据,1≤K≤10,000。

NOIP提高组初赛历年试题及答案选择题篇

NOIP提高组初赛历年试题及答案选择题篇单项选择题(共10-15题,每题1.5分,共计15-22.5分。每题有且仅有一个正确选项。)注:答案在末尾 NOIP2011-1.在二进制下,1011001+()=1100110。同普及组NOIP2011-1 A.1011 B.1101 C.1010 D.1111 NOIP2011-2.字符“A”的ASCII码为十六进制41,则字符“Z”的ASCII码为十六进制的()。 A.66 B.5A C.50 D.视具体的计算机而定 NOIP2011-3.下图是一棵二叉树,它的先序遍历是()。 A.ABDEFC B.DBEFAC C.DFEBCA D.ABCDEF NOIP2011-4.寄存器是()的重要组成部分。同普及组NOIP2011-6 A.硬盘 B.高速缓存 C.内存 D.中央处理器(CPU) NOIP2011-5.广度优先搜索时,需要用到的数据结构是()。同普及组 NOIP2011-11 A.链表 B.队列 C.栈 D.散列表

NOIP2011-6.在使用高级语言编写程序时,一般提到的“空间复杂度”中的空间是指()。同普及组NOIP2011-12 A.程序运行时理论上所占的内存空间 B.程序运行时理论上所占的数组空间 C.程序运行时理论上所占的硬盘空间 D.程序源文件理论上所占的硬盘空间 NOIP2011-7.应用快速排序的分治思想,可以实现一个求第K大数的程序。假定不考虑极端的最坏情况,理论上可以实现的最低的算法时间复杂度为()。A.O(n2) B.O(n log n) C.O(n) D.O(1) NOIP2011-8.为解决web应用中的不兼容问题,保障信息的顺利流通,()制定了一系列标准,涉及HTML、XML、CSS等,并建议开发者遵循。 A.微软 B.美国计算机协会(ACM) C.联合国教科文组织 D.万维网联盟(W3C) NOIP2011-9.体育课的铃声响了,同学们都陆续的奔向操场,按老师的要求从高到低站成一排。每个同学按顺序来到操场时,都从排尾走到排头,找到第一个比自己高的同学,并站在他的后面。这种站队的方法类似于()算法。同普及组NOIP2011-8 A.快速排序 B.插入排序 C.冒泡排序 D.归并排序 NOIP2011-10.1956年()授予肖克利(William Shockley)、巴丁(John Bardeen)和布拉顿(Walter Brattain),以表彰他们对半导体的研究和晶体管效应的发现。同普及组NOIP2011-18 A.诺贝尔物理学奖 B.约翰·冯·诺依曼奖 C.图灵奖 D.高德纳奖(Donald E.KnuthPrize)

NOIP普及组复赛试题

CCF全国信息学奥林匹克联赛(NOIP2017)复赛 普及组 (请选手务必仔细阅读本页内容) 注意事项: 1、文件名(程序名和输入输出文件名)必须使用英文小写。 2、C/C++中函数main()的返回值类型必须是int,程序正常结束时的返回值必须是0。 3、全国统一评测时采用的机器配置为:CPU AMD Athlon(tm) II x2 240 processor,2.8GHz, 内存4G,上述时限以此配置为准。 4、只提供Linux格式附加样例文件。 5、提交的程序代码文件的放置位置请参照各省的具体要求。 6、特别提醒:评测在当前最新公布的NOI Linux下进行,各语言的编译器版本以其为准。

1. 成绩 (score.cpp/c/pas) 【问题描述】 牛牛最近学习了C++入门课程,这门课程的总成绩计算方法是: 总成绩=作业成绩×20%+小测成绩×30%+期末考试成绩×50% 牛牛想知道,这门课程自己最终能得到多少分。 【输入格式】 输入文件名为score.in。 输入文件只有1行,包含三个非负整数A、B、C,分别表示牛牛的作业成绩、小测成绩和期末考试成绩。相邻两个数之间用一个空格隔开,三项成绩满分都是100分。 【输出格式】 输出文件名为score.out。 输出文件只有1行,包含一个整数,即牛牛这门课程的总成绩,满分也是100分。 见选手目录下的score/score1.in和score/score1.ans。 【输入输出样例1说明】 牛牛的作业成绩是100分,小测成绩是100分,期末考试成绩是80分,总成绩是100×20%+100×30%+80×50%=20+30+40=90。 【输入输出样例2说明】 牛牛的作业成绩是60分,小测成绩是90分,期末考试成绩是80分,总成绩是60×20%+90×30%+80×50%=12+27+40=79。 【数据说明】 对于30%的数据,A=B=0。 对于另外30%的数据,A=B=100。 对于100%的数据,0≤A、B、C≤100且A、B、C都是10的整数倍。

NOIP2013提高组复赛Day2

CCF全国信息学奥林匹克联赛(NOIP2013)复赛 提高组 day2 (请选手务必仔细阅读本页内容) 注意事项: 1、文件名(程序名和输入输出文件名)必须使用英文小写。 2、C/C++中函数main()的返回值类型必须是int,程序正常结束时的返回值必须是0。 3、全国统一评测时采用的机器配置为:CPU AMD Athlon(tm) 64x2 Dual Core CPU 5200+, 2.71GHz,内存2G,上述时限以此配置为准。 4、只提供Linux格式附加样例文件。 5、特别提醒:评测在NOI Linux下进行。

1.积木大赛 (block.cpp/c/pas) 【题目描述】 春春幼儿园举办了一年一度的“积木大赛”。今年比赛的内容是搭建一座宽度为n的大厦,大厦可以看成由n块宽度为1的积木组成,第i块积木的最终高度需要是?i。 在搭建开始之前,没有任何积木(可以看成n块高度为0的积木)。接下来每次操作,小朋友们可以选择一段连续区间[L,R],然后将第L块到第R块之间(含第L块和第R块)所有积木的高度分别增加1。 小M是个聪明的小朋友,她很快想出了建造大厦的最佳策略,使得建造所需的操作次数最少。但她不是一个勤于动手的孩子,所以想请你帮忙实现这个策略,并求出最少的操作次数。 【输入】 输入文件为block.in 输入包含两行,第一行包含一个整数n,表示大厦的宽度。 第二行包含n个整数,第i个整数为?i。 【输出】 输出文件为block.out 仅一行,即建造所需的最少操作数。 【样例解释】 其中一种可行的最佳方案,依次选择 [1,5] [1,3] [2,3] [3,3] [5,5] 【数据范围】 对于30%的数据,有1≤n≤10; 对于70%的数据,有1≤n≤1000; 对于100%的数据,有1≤n≤100000,0≤?i≤10000。

NOIP2008普及组复赛试题与解题报告

NOIP 2008普及组解题报告 一、ISBN号码(isbn.pas/c/cpp) 【问题描述】 每一本正式出版的图书都有一个ISBN号码与之对应,ISBN码包括9位数字、1位识别码和3位分隔符,其规定格式如“x-xxx-xxxxx-x”,其中符号“-”是分隔符(键盘上的减号),最后一位是识别码,例如0-670-82162-4就是一个标准的ISBN码。ISBN码的首位数字表示书籍的出版语言,例如0代表英语;第一个分隔符“-”之后的三位数字代表出版社,例如670代表维京出版社;第二个分隔之后的五位数字代表该书在出版社的编号;最后一位为识别码。 识别码的计算方法如下: 首位数字乘以1加上次位数字乘以2……以此类推,用所得的结果mod 11,所得的余数即为识别码,如果余数为10,则识别码为大写字母X。例如ISBN号码0-670-82162-4中的识别码4是这样得到的:对067082162这9个数字,从左至右,分别乘以1,2,…,9,再求和,即0×1+6×2+……+2×9=158,然后取158 mod 11的结果4作为识别码。 你的任务是编写程序判断输入的ISBN号码中识别码是否正确,如果正确,则仅输出“Right”;如果错误,则输出你认为是正确的ISBN号码。 【输入】 输入文件isbn.in只有一行,是一个字符序列,表示一本书的ISBN号码(保证输入符合ISBN号码的格式要求)。 【输出】 输出文件isbn.out共一行,假如输入的ISBN号码的识别码正确,那么输出“Right”,否则,按照规定的格式,输出正确的ISBN号码(包括分隔符“-”)。 【输入输出样例1】 isbn.in 0-670-82162-4 isbn.out Right 【输入输出样例2】 isbn.in

NOIP信息学奥赛普及组初赛C试题及答案较完美版

NOIP2016第二十二届全国青少年信息学奥林匹克联赛初赛 普及组C++语言试题 竞赛时间:2016年10月22日14:30~16:30 一、单项选择题(共20题,每题1.5分,共计30分;每题有且仅有一个正确选项) 1.以下不是微软公司出品的软件是( )。 A.Powerpoint B.Word C.Excel D. Acrobat Reader 2.如果256种颜色用二进制编码来表示,至少需要( )位。 A.6 B.7 C.8 D.9 3.以下不属于无线通信技术的是( )。 A.蓝牙B.WiFi C.GPRS D.以太网 4.以下不是CPU生产厂商的是( )。 A.Intel B.AMD C.Microsoft D.IBM 5.以下不是存储设备的是( )。 A.光盘B.磁盘C.固态硬盘D.鼠标 6.如果开始时计算机处于小写输入状态,现在有一只小老鼠反复按照CapsLock、字母键A、字母键S和字母键D的顺序循环按键,即CapsLock、A、S、D、CapsLock、A、S、D、……,屏幕上输出的第81个字符是字母( )。 A.A B.S C.D D.a 7.二进制数00101100和00010101的和是( )。 A.00101000 B.01000001 C.01000100 D.00111000 8.与二进制小数0.1相等的八进制数是( )。 A.0.8 B.0.4 C.0.2 D.0.1 9.以下是32位机器和64位机器的区别的是( )。 A.显示器不同B.硬盘大小不同 C.寻址空间不同D.输入法不同 10.以下关于字符串的判定语句中正确的是( ) A.字符串是一种特殊的线性表B.串的长度必须大于零 C.字符串不可以用数组来表示D.空格字符组成的串就是空串 11.一棵二叉树如右图所示,若采用顺序存储结构,即用一维数组元素 存储该二叉树中的结点(根结点的下标为1,若某结点的下标为i,则其左 孩子位于下标2i处、右孩子位于下标(2i+1)处),则图中所有结点的最大 下标为( ) 。 A.6 B.10 C.12 D.15 12.若有如下程序段,其中s、a、b、c均己定义为整型变量,且a、c均己赋值(c大于0)。 s=a; for (b=1;b<=c;b++) s=s+1; 则与上述程序段修改s值的功能等价的赋值语句是( )。 A. s=a+b; B. s=a+c; C. s=s+c; D. s=b+c; 13.有以下程序: #include using namespace std; int main() { int k=4,n=0; while(n

noip普及组复赛模拟试题8

1. Description 给定整数n(32位以内),判断它是否为2的方幂。是就输出 'yes',否则输出'no'。 Input 一个整数n。 Output 一个字符串 Sample Input 4 Sample Output yes 2. 问题描述: 计算机软件版本通常被用来区分某种软件在不同时间的发布。大部分软件版本号都是用“.”分隔的非负数的序列。对两个不同的版本A = a1.a2.a3…an和B = b1.b2.b3…bm,如果下面两个条件之一成立,我们认为版本A要比版本B新:1.对某个i,我们有:对所有j < i, ai > bi 和aj = bj; 2.n比m大,而且对所有i < m, ai = bi。 (ai和bi都不超过LONGINT) 在这个问题里,你要对给定的一组版本号,按照上面的定义从旧到新排序。输入文件(VERSIONS.IN): 输入文件第一行是一个整数N(N<=20),表示要排序的版本数。接下来的N行每行一个版本号。每个版本号是长度不超过50的字符串。 输出文件(VERSIONS.OUT): 将排好序的结果以每行一个版本号输出。 输入输出样例: VERSIONS.IN 4 3.0.5 1 2.4 2.4.6 VERSIONS.OUT 1 2.4 2.4.6 3.0.5 3. 输入正整数N、M,求N÷M的值。如果商的小数部分出现循环节,则输出时要求用圆括号将循环节括起来,如果商为整数,则输出为整数。例如:1÷2=0.51÷3=0.(3) 22÷5= 4.4 33÷3=11 输入:N M 输出:N÷M的值(保证小数点后不超过50位,而且未尾不能有多余的0)样例:输入:N,M=45 56 输出:0.803(571428) 4.现在是晚餐时间,而母牛们在外面分散的牧场中。 农民约翰按响了电铃,所以她们开始向谷仓走去。 你的工作是要指出哪只母牛会最先到达谷仓(在给出的测试数据中,总会有且只 有一只速度最快的母牛)。 在挤奶的时候(晚餐前),每只母牛都在她自己的牧场上,一些牧场上可能没有母

noip普及组复赛答案

noip普及组复赛答案 【篇一:noip普及组复赛入门测试(答案+测试数据)】class=txt>新龟兔赛跑比赛即将举行,此次龟兔赛跑比赛的规则与以 往有所不同,不再考察兔子和乌龟谁在最短的时间内跑完规定的路程,而是考察谁在规定时间内跑的路程更长,且兔子和乌龟跑步都是匀速的。由于兔子的坏习惯,它总喜欢把比赛的总时间t小时中的k小时拿来睡觉。现在给你比赛的总时间t、兔子的睡觉时间k、兔子的速度u、乌龟的速度v,需要你求出该次比赛谁最后获胜。 输入第一行为一个整数x,表示有x组输入数据。每组数据只有一行,包括4个数t、k、u、v (1 ≤ t≤ 300,0 ≤ k ≤ t,1 ≤ u ≤ 100,1 ≤ v ≤ 100)。 对于每组数据,输出只有一个数,如果兔子获胜则输出-1,如果乌龟获胜则输出1,如果同时到达则输出0。允许输入一组数后立即输出对应的结果。样例输入:2 1 1 2 1 6 2 6 3 样例输出: 1 -1 var v,u,t,k,n,i:integer; begin readln(n); for i:=1 to n do begin readln(t,k,u,v); if v*tu*(t-k) then writeln(1); if v*tu*(t-k) then writeln(-1); if v*t=u*(t-k) then writeln(0); end; end. 1、输入: 2 6 2 6 2 8 6 8 2 输出: -1

2、输入: 2 300 280 60 20 120 0 12 13 输出: 1 1 3、输入: 3 100 20 50 30 100 50 45 25 100 80 27 17 输出: -1 1 1 4、输入: 3 150 77 29 23 127 11 22 13 139 22 13 7 输出: 1 -1 -1 二、小球路程(文件名:xqlc.pas ) 已知小球从100米高度自由下落,落地后反弹起,又落地,又弹起,??。每次弹起的高度都是上一次高度的一半。求小球第n次反弹起的高度和球在整个过程所经过的路程(包括下落和反弹),用键盘输入n,输出反弹高度和经过路程,结果保留两位小数。 输入输出示例:输入:2 输出:25.00 225.00 var n,b:integer;s,h:real; begin readln(n); h:=100; for b:=1 to n do begin s:=s+h;

NOIP普及组初赛历年试题及答案选择题篇

NOIP普及组初赛历年试题及答案选择题篇 单项选择题:每次共20题,每题1.5分,共计30分。每题有且仅有一个正确选项。注:答案在文末 一、计算机基础(每年8-10题,占选择题的一半,找份材料翻几遍就可拿分了) NOIP2011-3. 一片容量为8G的SD卡能储存大约( )张大小为2MB的数码照片。 A.1600 B.2000 C.4000 D.16000 NOIP2011-4. 摩尔定律(Moore'slaw)是由英特尔创始人之一戈登·摩尔(GordonMoor)提出来的。根据摩尔定律,在过去几十年一级在可预测的未来纪念,单块集成电路的集成度大约每( )个月翻一番。 A.1 B.6 C.18 D.36 NOIP2011-6.寄存器是( )的重要组成部分。 A.硬盘 B.高速缓存 C.内存 D.中央处理器(CPU) NOIP2011-10. 有人认为,在个人电脑送修前,将文件放入回收站中就是已经将其删除了。这种想法是( )。 A .正确的,将文件放入回收站以为着彻底删除、无法恢复 B.不正确的,只有将回收站清空后,才意味着彻底删除、无法恢复 C.不正确的,即使回收站清空,文件只是被标记为删除,仍可能通过回复软件找回 D.不正确的,只要在硬盘上出现过的文件,永远不可能被彻底删除 NOIP2011-14. 生物特征识别,是利用人体本身的生物特征进行身份认证的一种技术。目前,指纹识别、虹膜识别、人脸识别等技术已广泛应用于政府、银行、安全防卫等领域。以下不属于生物特征识别技术及其应用的是( )。

NOIP2011-16. 关于汇编语言,下列说法错误的是( )。 A.是一种与具体硬件相关的程序设计语言 B.在编写复杂程序时,相对于高级语言而言代码量较大,且不易调试 C.可以直接访问寄存器、内存单元、以及I/O端口 D.随着高级语言的诞生,如今已完全被淘汰,不再使用 NOIP2011-18. 1956年( )授予肖克利、巴丁和布拉顿,以表彰他们对半导体的研究和晶体管效应的发现。 A.诺贝尔物理学奖 B.约翰·冯·诺依曼奖 C.图灵奖 D.高德纳奖 NOIP2011-20. 从ENIAC到当前最先进的计算机,冯·诺依曼体系结构始终占有重要地位。冯诺依曼体系结构的核心内容是( )。 A.采用开关电路 B.采用半导体器件 C.采用存储程序和程序控制原理 D.采用键盘输入 NOIP2012-1. 计算机如果缺少( ),将无法正常启动。 A.内存 B.鼠标 C.U盘 D.摄像头

NOIP2015复赛普及组试题

CCF 全国信息学奥林匹克联赛(NOIP2015)复赛 普及组 (请选手务必仔细阅读本页内容) 一.题目概况 二.提交源程序文件名 三.编译命令(不包含任何优化开关)

【问题描述】 注意事项: 1、文件名(程序名和输入输出文件名)必须使用英文小写。 2、C/C++中函数main()的返回值类型必须是int,程序正常结束时的返回值必须是0。 3、全国统一评测时采用的机器配置为:CPU AMD Athlon(tm) II x2 240 processor,2.8GHz, 内存4G,上述时限以此配置为准。 4、只提供Linux 格式附加样例文件。 5、特别提醒:评测在当前最新公布的NOI Linux 下进行,各语言的编译器版本以其为准。 1. 金币 (coin.cpp/c/pas) 国王将金币作为工资,发放给忠诚的骑士。第一天,骑士收到一枚金币;之后两天(第二天和第三天),每天收到两枚金币;之后三天(第四、五、六天),每天收到三枚金币;之后四天(第七、八、九、十天),每天收到四枚金币……;这种工资发放模式会一直这样延续下去:当连续N 天每天收到N 枚金币后,骑士会在之后的连续N+1 天里,每天 收到N+1 枚金币。 请计算在前K 天里,骑士一共获得了多少金币。 【输入格式】 输入文件名为coin.in。 输入文件只有1 行,包含一个正整数K,表示发放金币的天数。 【输出格式】 输出文件名为coin.out。 输出文件只有1 行,包含一个正整数,即骑士收到的金币数。 【输入输出样例1】

【问题描述】 【输入输出样例1 说明】 骑士第一天收到一枚金币;第二天和第三天,每天收到两枚金币;第四、五、六天,每天收到三枚金币。因此一共收到1+2+2+3+3+3=14 枚金币。 【输入输出样例2】 【数据说明】 对于100%的数据,1 ≤ K ≤ 10,000。 2.扫雷游戏 (mine.cpp/c/pas) 扫雷游戏是一款十分经典的单机小游戏。在n 行m 列的雷区中有一些格子含有地雷 (称之为地雷格),其他格子不含地雷(称之为非地雷格)。玩家翻开一个非地雷格时,该格将会出现一个数字——提示周围格子中有多少个是地雷格。游戏的目标是在不翻出任何地雷格的条件下,找出所有的非地雷格。 现在给出n行m列的雷区中的地雷分布,要求计算出每个非地雷格周围的地雷格数。

(NOIP2011)复赛普及组试题

四.运行内存限制 内存上限 128M 128M 128M 128M 全国信息学奥林匹克联赛(NOIP2011)复赛普及组 1.数字反转 (reverse.cpp/c/pas) 【问题描述】 给定一个整数,请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零(参见样例2)。 【输入】输入文件名为reverse.in。输入共1行,一个整数N。 【输出】输出文件名为reverse.out。输出共1行,一个整数,表示反转后的新数。 【输入输出样例1】 reverse.in reverse.out 123 321 【输入输出样例2】 Reverse.in reverse.out -380 -83 【数据范围】 -1,000,000,000 ≤ N ≤ 1,000,000,000。 2.统计单词数 (stat.cpp/c/pas) 【问题描述】 一般的文本编辑器都有查找单词的功能,该功能可以快速定位特定单词在文章中的位置,有的还能统计出特定单词在文章中出现的次数。现在,请你编程实现这一功能,具体要求是:给定一个单词,请你输出它在给定的文章中出现的次数和

第一次出现的位置。注意:匹配单词时,不区分大小写,但要求完全匹配,即给定单词必须与文章中的某一独立单词在不区分大小写的情况下完全相同(参见样例1),如果给定单词仅是文章中某一单词的一部分则不算匹配(参见样例2)。 【输入】 输入文件名为stat.in,2行。第1行为一个字符串,其中只含字母,表示给定单词;第2行为一个字符串,其中只可能包含字母和空格,表示给定的文章。 【输出】 输出文件名为stat.out。只有一行,如果在文章中找到给定单词则输出两个整数,两个整数之间用一个空格隔开,分别是单词在文章中出现的次数和第一次出现的位置(即在文章中第一次出现时,单词首字母在文章中的位置,位置从0开始);如果单词在文章中没有出现,则直接输出一个整数-1。 【输入输出样例1】 stat.in stat.out To to be or not to be is a question 2 0 【输入输出样例1说明】 输出结果表示给定的单词To在文章中出现两次,第一次出现的位置为0。 【输入输出样例2】 stat.in stat.out to Did the Ottoman Empire lose its power at that time -1 【输入输出样例2说明】 表示给定的单词to在文章中没有出现,输出整数-1。 【数据范围】 1 ≤单词长度≤ 10。 1 ≤文章长度≤ 1,000,000。

相关文档
最新文档