NOIP2016年第二十二届全国青少年信息学奥林匹克联赛提高组初赛(pascal).doc

上传人:一*** 文档编号:2756491 上传时间:2020-05-03 格式:DOC 页数:12 大小:214.50KB
返回 下载 相关 举报
NOIP2016年第二十二届全国青少年信息学奥林匹克联赛提高组初赛(pascal).doc_第1页
第1页 / 共12页
NOIP2016年第二十二届全国青少年信息学奥林匹克联赛提高组初赛(pascal).doc_第2页
第2页 / 共12页
点击查看更多>>
资源描述

《NOIP2016年第二十二届全国青少年信息学奥林匹克联赛提高组初赛(pascal).doc》由会员分享,可在线阅读,更多相关《NOIP2016年第二十二届全国青少年信息学奥林匹克联赛提高组初赛(pascal).doc(12页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、.*第二十二届全国青少年信息学奥林匹克联赛初赛提高组 Pascal 语言试题竞赛时间:2016 年 10 月 22 日 14:3016:30选手注意:l 试题纸共有 13 页,答题纸共有 2 页,满分 100 分。请在答题纸上作答,写在试题纸上的一律无效。l 不得使用任何电子设备(如计算器、手机、电子词典等)或查阅任何书籍资料。一、单项选择题(共 15 题,每题 1.5 分,共计 22.5 分;每题有且仅有一个正确选项)1. 以下不是微软公司出品的软件是( )。A. PowerpointC. ExcelB. WordD. Acrobat Reader2. 如果开始时计算机处于小写输入状态,现在

2、有一只小老鼠反复按照 CapsLock、字母键 A、字母键 S 和字母键 D 的顺序来回按键,即 CapsLock、A、S、D、S、A、CapsLock、A、S、D、S、A、CapsLock、A、S、D、S、A、,屏幕上输出的第 81 个字符是字母( )。 A. AB. SC. DD. a3. 二进制数 00101100 和 01010101 异或的结果是( )。 A. 00101000B. 01111001C. 01000100D. 001110004. 与二进制小数 0.1 相等的八进进制数是( )。 A. 0.8B. 0.4C. 0.2D. 0.15. 以比较作为基本运算,在 N 个数中

3、找最小数的最少运算次数为( )。 A. NB. N-1 C. N2D. log N6. 表达式 a*(b+c)-d 的后缀表达形式为( )。 A. abcd*+- B. abc+*d-C. abc*+d-D. -+*abcd7. 一棵二叉树如右图所示,若采用二叉树链表存储该二叉树(各个结点包括结点的数据、左孩子指针、右孩子指针)。如果没有左孩子或者右孩子,则对应的为空指针。那么该链表中空指针的数目为( )。 A. 6B. 7C. 12 D. 148. G 是一个非连通简单无向图,共有 28 条边,则该图至少有( )个顶点。 A. 10B. 9C. 8D. 79. 某计算机的 CPU 和内存之间

4、的地址总线宽度是 32 位(bit),这台计算机最多可以使用( )的内存。 A. 2GB B. 4GBC. 8GB D. 16GB10. 有以下程序:vark, n: longint;begink := 4; n := 0;while n k dobegininc(n);if n mod 3 0 thencontinue;dec(k);end;writeln(k, , n);end. 程序运行后的输出结果是( )。 A. 2,2B. 2,3C. 3,2D. 3,311. 有 7 个一模一样的苹果,放到 3 个一样的盘子中,一共有( )种放法。 A. 7B. 8C. 21D. 3712. Luc

5、ia 和她的朋友以及朋友的朋友都在某社交网站上注册了账号。下图是他们之间的关系图,两个人之间有边相连代表这两个人是朋友,没有边相连代表不是朋友。这个社交网站的规则是:如果某人 A 向他(她)的朋友 B 分享了某张照片,那么 B 就可以对该照片进行评论;如果 B 评论了该照片,那么他(她)的所有朋友都可以看见这个评论以及被评论的照片,但是不能对该照片进行评论(除非 A 也向他(她)分享了该照片)。现在 Lucia 已经上传了一张照片,但是她不想让 Jacob 看见这张照片,那么她可以向以下朋友()分享该照片。A. Dana, Michael, Eve B. Dana, Eve, MonicaC.

6、 Michael, Eve, JacobD. Micheal, Peter, Monica13. 周末小明和爸爸妈妈三个人一起想动手做三道菜。小明负责洗菜、爸爸负责切菜、妈妈负责炒菜。假设做每道菜的顺序都是:先洗菜 10 分钟,然后切菜 10 分钟,最后炒菜 10 分钟。那么做一道菜需要 30 分钟。注意:两道不同的菜的相同步骤不可以同时进行。例如第一道菜和第二道的菜不能同时洗,也不能同时切。那么做完三道菜的最短时间需要( )分钟。 A. 90B. 60C. 50D. 4014. 假设某算法的计算时间表示为递推关系式Tn=2Tn4+n T1=1则算法的时间复杂度为()。 A. O()B. O(

7、n)C. O(n log )D. O(2)15. 给定含有 n 个不同的数的数组 L=。如果L中存在xi(1 i n)使得 x1 x2 . xi-1 xi+1 . xn, 则称 L 是单峰的,并称xi是L的“峰顶”。现在已知L是单峰的,请把 a-c 三行代码补全到算法中使得算法正确找到L的峰顶。a. Search(k+1, n)b. Search(1, k-1)c. return LkSearch(1, n)1. kn/22. if Lk Lk-1 and Lk Lk+13. then _4. else if Lk Lk-1 and Lk Lk+15. then _6. else _正确的填空

8、顺序是()。 A. c, a, bB. c, b, aC. a, b, cD. b, a, c二、不定项选择题(共 5 题,每题 1.5 分,共计 7.5 分;每题有一个或多个正确选项,多选或少选均不得分)1. 以下属于无线通信技术的有( )。A. 蓝牙B. WiFiC. GPRSD. 以太网2. 可以将单个计算机接入到计算机网络中的网络接入通讯设备有( )。 A. 网卡B. 光驱C. 鼠标D. 显卡3. 下列算法中运用分治思想的有( )。 A. 快速排序 B. 归并排序C. 冒泡排序D. 计数排序4. 下图表示一个果园灌溉系统,有 A、B、C、D 四个阀门,每个阀门可以打开或关上,所有管道粗

9、细相同,以下设置阀门的方法中,可以让果树浇上水的有( )。 A. B 打开,其他都关上 C. A 打开,其他都关上 B. AB 都打开,CD 都关上 D. D 打开,其他都关上5. 参加 NOI 比赛,以下能带入考场的有( )。 A. 钢笔B. 适量的衣服C. U 盘D. 铅笔三、问题求解(共 2 题,每题 5 分,共计 10 分;每题全部答对得 5 分,没有部分分)1. 一个 18 的方格图形(不可旋转)用黑、白两种颜色填涂每个方格。如果每个方格只能填涂一种颜色,且不允许两个黑格相邻,共有_种填涂方案。2. 某中学在安排期末考试时发现,有7个学生要参加7门课程的考试,下表列出了哪些学生参加哪

10、些考试(用表示要参加相应的考试)。最少要安排_个不同的考试时间段才能避免冲突?考试学生 1学生 2学生 3学生 4学生 5学生 6学生 7通用技术物理化学生物历史地理政治四、阅读程序写结果(共 4 题,每题 8 分,共计 32 分)1. vara: array1.6 of longint = (1, 2, 3, 4, 5, 6);pi, pj, t, i: longint;beginpi := 1;pj := 6;while pi pj dobegint := api;api := apj;apj := t;inc(pi);dec(pj);end;for i := 1 to 6 dowrite

11、(ai, ,);writeln;end.输出:_2. varn, i, j, k: longint;total_len: array1.100 of longint;len: array1.100, 1.3 of longint;a, b: array1.100, 1.100 of char;c: array1.100 of string100;begini := 0; j := 0; k := 1;readln(n);for i := 1 to n dobeginreadln(ci);total_leni:=length(ci);end;for i := 1 to n dobeginj :=

12、 1;while (ci, j :) dobeginai, k := ci, j;k := k + 1;inc(j);end;leni, 1 := k - 1;ai, k := chr(0);k := 1;for j := j + 1 to total_leni dobeginbi, k := ci, j;k := k + 1;end;leni, 2:=k-1;bi, k:=chr(0);k := 1;end;for i := 1 to n dobeginif (leni, 1 = leni, 2) thenwrite(NO,)elsebegink := 1;for j := 1 to len

13、i, 2 dobeginif ai, k = bi, j thenk := k + 1;if k leni, 1 thenbreak;end;if j = leni, 2 thenwrite(NO,)elsewrite(YES,);end;end;writeln;end.输入:3AB:ACDEbFBkBDAR:ACDBrTSARS:Severe Atypical Respiratory Syndrome输出:_(注:输入各行前后均无空格)3. function lps(seq: string; i, j: longint): longint;varlen1, len2: longint;beg

14、inif i = j thenexit(1);if i j thenexit(0);if (seqi = seqj) thenexit(lps(seq, i + 1, j - 1) + 2);len1 := lps(seq, i, j - 1);len2 := lps(seq, i + 1, j);if len1 len2 thenexit(len1)elseexit(len2);end;varn: longint;seq: string;beginseq := acmerandacm;n := length(seq);writeln(lps(seq, 1, n);end.输出:_4. var

15、map: array1.100, 1.100 of longint;sum, weight, visit: array1.100 of longint;n, i, x, y, ans, ansn: longint;procedure dfs(node: longint);varv, maxw: longint;beginvisitnode := 1;sumnode := 1;maxw := 0;for v := 1 to n dobeginif (mapnodev = 0) or (visitv 0) thencontinue;dfs(v);inc(sumnode, sumv);if sumv

16、 maxw thenmaxw := sumv;end;if n - sumnode maxw thenmaxw := n - sumnode;weightnode := maxw;end;beginfillchar(map, sizeof(map), 0);fillchar(sum, sizeof(sum), 0);fillchar(weight, sizeof(weight), 0);fillchar(visit, sizeof(visit), 0);readln(n);for i := 1 to n - 1 dobeginread(x,y);mapx,y:=1;mapy,x:=1;end;

17、dfs(1);ans := n; ansn := 0;for i := 1 to n doif weighti ans thenbeginans := weighti;ansn := i;end;writeln(ansn, , ans);end.输入:111 21 32 42 52 63 77 87 116 99 10输出:_五、完善程序(共 2 题,每题 14 分,共计 28 分)1. (交朋友)根据社会学研究表明,人们都喜欢找和自己身高相近的人做朋友。现在有n名身高两两不相同的同学依次走入教室,调查人员想预测每个人在走入教室的瞬间最想和已经进入教室的哪个人做朋友。当有两名同学和这名同学的身

18、高差一样时,这名同学会更想和高的那个人做朋友。比如一名身高为1.80米的同学进入教室时,有一名身高为1.79米的同学和一名身高为1.81米的同学在教室里,那么这名身高为1.80米的同学会更想和身高为1.81 米的同学做朋友。对于第一个走入教室的同学我们不做预测。由于我们知道所有人的身高和走进教室的次序,所以我们可以采用离线的做法来解决这样的问题,我们用排序加链表的方式帮助每一个人找到在他之前进入教室的并且和他身高最相近的人。(第一空 2 分,其余 3 分)constmaxn = 200000;infinity = 2147483647;varanswer, height, previous,

19、next: array0.maxn of longint;rank: array0.maxn of longint;n, higher, shorter, i: longint;procedure sort(l, r: longint);varx, i, j, temp: longint;beginx := heightrank(l + r) div 2; i := l; j := r;while i = j dobeginwhile heightranki x do dec(j);if (1)then begintemp := ranki; ranki := rankj; rankj :=

20、temp;inc(i); dec(j);end;end;if i r then sort(i, r);if l j then sort(l, j);end;beginreadln(n);for i := 1 to n dobeginread(heighti);ranki := i;end;sort(1, n);for i := 1 to n dobeginpreviousranki := ranki - 1; (2);end;for i := n downto 2 dobeginhigher := infinity; shorter := infinity;if previousi 0 the

21、nshorter := heighti - heightpreviousi;if nexti 0 then (3) ; If (4) then answeri := previousielseansweri := nexti;nextpreviousi := nexti; (5) ;end;for i := 2 to n dowriteln(i, :, answeri);end.2. (交通中断)有一个小国家,国家内有 n 座城市和 m 条双向的道路,每条道路连接着两座不同的城市。其中 1 号城市为国家的首都。由于地震频繁可能导致某一个城市与外界交通全部中断。这个国家的首脑想知道,如果只有第i

22、(i1)个城市因地震而导致交通中断时,首都到多少个城市的最短路径长度会发生改变。如果因为无法通过第 i 个城市而导致从首都出发无法到达某个城市,也认为到达该城市的最短路径长度改变。对于每一个城市 i,假定只有第 i 个城市与外界交通中断,输出有多少个城市会因此导致到首都的最短路径长度改变。我们采用邻接表的方式存储图的信息,其中 headx表示顶点 x 的第一条边的编号,nexti表示第 i 条边的下一条边的编号,pointi表示第 i 条边的终点,weighti表示第 i 条边的长度。(第一空 2 分,其余 3 分)constmaxn = 6000;maxm = 100000;inf = 21

23、47483647;varnext, point, weight: array1.maxm of longint;head, dist, visit: array1.maxn of longint;queue: array0.maxn - 1 of longint;n, m, i, j, s, t, total, x, y, z, answer: longint;procedure link(x, y, z: longint);begininc(total);nexttotal := headx;headx := total;pointtotal := y;weighttotal := z;in

24、c(total);nexttotal := heady;heady := total;pointtotal := x;weighttotal := z;end;begintotal := 0;readln(n, m);for i := 1 to m dobeginreadln(x, y, z);link(x, y, z);end;for i := 1 to n do disti := inf; (1) ;queue1 := 1;visit1 := 1;s := 1; t := 1;/ 使用 SPFA 求出第一个点到其余各点的最短路长度while s = t dobeginx := queues

25、 mod maxn;j := headx;while j 0 dobegin if (2) thenbegindistpointj := distx + weightj;if (visitpointj = 0) thenbegininc(t);queuet mod maxn := pointj;visitpointj := 1;end;end;j := nextj;end; (3) ;inc(s);end;for i := 2 to n dobeginqueue1 := 1;fillchar(visit, sizeof(visit), 0);visit1 := 1;s := 1; t := 1

26、;while s = t do / 判断最短路长度是否不变beginx := queues;j := headx;while j 0 do if (pointj i) and ( (4) )and (visitpointj = 0) thenbegin (5) ; inc(t);queuet := pointj;end;j := nextj;inc(s);end;answer := 0;for j := 1 to n doinc(answer, 1 - visitj);writeln(i, :, answer - 1);end;end.第二十二届全国青少年信息学奥林匹克联赛初赛提高组参考答案一

27、、单项选择题(共 15 题,每题 1.5 分,共计 22.5 分)12345678DABBBBBB9101112131415BDBACCA二、不定项选择题(共 5 题,每题 1.5 分,共计 7.5 分;每题有一个或多个正确选项,没有部分分)12345ABCAABAABD三、问题求解(共 2 题,每题 5 分,共计 10 分;每题全部答对得 5 分,没有部分分) 1. 552. 3四、阅读程序写结果(共 4 题,每题 8 分,共计 32 分)1. 6,5,4,3,2,1,2. YES,NO,YES,3. 54. 2 5五、完善程序(共计 28 分,以下各程序填空可能还有一些等价的写法,由各省赛

28、区组织本省专家审定及上机验证,可以不上报 CCF NOI 科学委员会复核)Pascal 语言C+语言C 语言分值11i=j22nextranki:=ranki+1nextranki=ranki+133higher:=heightnexti-heightihigher=heightnexti-heighti34shorterhigher35previousnexti:=previousipreviousnexti=previousi321dist1:=0dist1=022distx+weightjdistpointj33visitx:=0visitx=034distx+weightj=distpointjdistx+weightj=distpointj35visitpointj:=1visitpointj=13

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com