NOI第九届全国青少年信息学奥林匹克联赛初赛试题.docx

上传人:b****4 文档编号:4306528 上传时间:2022-11-29 格式:DOCX 页数:12 大小:21.79KB
下载 相关 举报
NOI第九届全国青少年信息学奥林匹克联赛初赛试题.docx_第1页
第1页 / 共12页
NOI第九届全国青少年信息学奥林匹克联赛初赛试题.docx_第2页
第2页 / 共12页
NOI第九届全国青少年信息学奥林匹克联赛初赛试题.docx_第3页
第3页 / 共12页
NOI第九届全国青少年信息学奥林匹克联赛初赛试题.docx_第4页
第4页 / 共12页
NOI第九届全国青少年信息学奥林匹克联赛初赛试题.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

NOI第九届全国青少年信息学奥林匹克联赛初赛试题.docx

《NOI第九届全国青少年信息学奥林匹克联赛初赛试题.docx》由会员分享,可在线阅读,更多相关《NOI第九届全国青少年信息学奥林匹克联赛初赛试题.docx(12页珍藏版)》请在冰豆网上搜索。

NOI第九届全国青少年信息学奥林匹克联赛初赛试题.docx

NOI第九届全国青少年信息学奥林匹克联赛初赛试题

第九届全国青少年信息学奥林匹克联赛初赛试题

(提高组PASCAL语言二小时完成)

  ●●全部试题答案均要求写在答卷纸上,写在试卷纸上一律无效●●  )

一、单项选择题(共10题,每题1.5分,共计15分。

每题有且仅有-个正确答案)。

  1.图灵(AlanTuring)是()。

    A)美国人B)英国人C)德国人D)匈牙利人E)法国人

  2.第一个给计算机写程序的人是()。

    A)AlanMathisonTuringB)AdaLovelaceC)JohnvonNeumann

    D)JohnMc-CarthyE)EdsgerWybeDijkstra

  3.十进制数2003等值于二进制数()。

    A)0100000111B)10000011C)110000111D)11111010011E)1111010011

  4.假设A=true,B=false,C=true,D=true,逻辑运算表达式A∧B∨C∧D的值是()。

    A)trueB)falseC)0D)1E)NULL

  5.一个高度为h的二叉树最小元素数目是()。

    A)2h+lB)hC)2h-1D)2hE)2h-1

  6.已知队列(13,2,11,34,4l,77,5,7,18,26,15),第一个进入队列的元素是13,则第五个出队列的元素是()。

    A)5B)41C)77D)13E)18

  7.下面一段程序是用()语言书写的。

    intfuncl(intn){

    inti,sum=0;

    for(i=1;i<=n;i++=

    sum+=i*i;

    returnsum;

    

    A)FORTRANB)PASCALC)CD)PROLOGE)BASIC

  8.设全集E={1,2,3,4,5},集合A={1,4},B={l,2,5},C={2,4),则集合(A∩B)∪~C为()。

    A)空集B){1}C){3,5}D){1,5}E){1,3,5}

  9.表达式(1+34)*5-56/7的后缀表达式为()

    A)1+34*5-56/7B)-*+1345/567C)134+5*567/-

    D)1345*+567/-E)134+5567-*/

  10.下列计算机设备,既是输入设备,又是输出设备的是()。

    A)键盘B)触摸屏C)扫描仪D)投影仪E)数字化仪

二、不定项选择题(共10题,每题1.5分,共计15分。

多选或少选均不得分)。

  11.下列分辨率的显示器所显示出的图像,最清晰的是()。

    A)800*600B)1024*768C)640*480D)1280*1024E)800*1000

  12.下列说法中,哪个(些)是错误的()。

    A)程序是指令的序列,它有三种结构:

顺序、分支和循环。

    B)数据总线决定了中央处理器CPU所能访问的最大内存空间的大小。

    C)中央处理器CPU内部有寄存器组,用来存储数据。

    D)不同厂家生产的CPU所能处理的指令集是相同的。

    E)数据传输过程中可能会出错,奇偶校验法可以检测出数据中那一位在传输中出了差错。

  13.CPU访问内存的速度比访问下列哪个(些)存储设备要慢()。

    A)寄存器B)硬盘C)软盘D)高速缓存E)光盘

  14.下列电子邮件地址,哪个(些)是正确的()。

    A)wang@B)cai@jcc.pc.too1.rf.edu.jpC)162.105.111.22

    D)E)

  15.数字图像文件可以用下列哪个(些)软件来编辑()。

    A)画笔(Paintbrush)B)记事簿(Notepad)C)PhotoshopD)WmRARE)MidiSoft

  16.下列哪个(些)软件不是操作系统软件的名字()。

    A)WindowsXPB)DOSC)LinuxD)OS/2E)Arch/Info

  17.下列哪个(些)不是个人计算机的硬件组成部分()。

    A)主板B)虚拟内存C)电源D)硬盘E)总线

  18.运算式(2008)10-(3723)8的结果是()。

    A)(-1715)10B)(5)10C)(5)16D)(101)2E)(3263)8

  19.已知元素(8,25,14,87,5l,90,6,19,20),问这些元素以怎样的顺序进入栈,才能使出栈的顺序满足:

8在5l前面;90在87后面;20在14后面;25在6前面;19在90后面。

()

    A)20,6,8,51,90,25,14,19,87

    B)51,6,19,20,14,8,87,90,25

    C)19,20,90,7,6,25,5l,14,87

    D)6,25,51,8,20,19,90,87,14

    E)25,6,8,51,87,90,19,14,20

  20.假设我们用d=(a1,a2,...,a5),表示无向图G的5个顶点的度数,下面给出的哪(些)组d值合理的()。

    A){5,4,4,3,1}B){4,2,2,1,1}C){3,3,3,2,2}

    D){5,4,3,2,l}E){2,2,2,2,2)

三.问题求解(共2题,每题5分,共计10分)

  1.无向图G有16条边,有3个4度顶点、4个3度顶点,其余顶点的度均小于3,则G至少    个顶点。

  2.某年级学生共选修6门课程,期末考试前,必须提前将这6门课程考完,每人每天只在下午至多考一门课程,设6门课程分别为c1,c2,c3,c4,c5,c6,S(ci)为学习ci的学生集合。

已知S(ci)∩S(c6)≠?

,i=l,2,...,5,S(ci)∩S(ci+1)≠?

,i=1,2,3,4,S(c5)∩S(c1)≠?

,问至少安排    天才能考完这6门课程。

四.阅读程序(共4题,每题8分,共计32分)

1.programPrograml;

 vara,b,c,d,sum:

1ongint;

 begin

   read(a,b,c,d);

   a:

=amod23;b:

=bmod28;c:

=cmod33;

   sum:

=a*5544+b*14421+c*1288-d;

   sum:

=sum+21252;sum:

=summod21252;

   if(sum=0)thensum:

=21252;

   writeln(sum);

 end.

输入:

28310223320输出:

    

2.programProgram2;

 const

  u:

array[1..4]ofinteger=(0,5,3,1);

  v:

array[1..4]0finteger=(0,7,6,5);

 vara,b,c,d,e,f,x,y,z:

integer;

 begin

  read(a,b,c,d,e,f);

  z:

=f+e+d+(c+3)div4;y:

=5*d+u[cmod4];

  if(b>y)then

    begin

     z:

=z+(b-y+8)div9;

     x:

=((b-y+8)div9*9-(b-y))*4+11*e+V[cmod4];

     end

    else

     x:

=(y-b)*4+11*e+v[cmod4];

    if(a>x)then

     z:

=z+(a-x+35)div36;

  writeln(z);

 end.

输入;479205647输出:

    

3.programProgramg3;

 varm,n:

integer;Mark:

boo1ean;

 functiontest(m,N:

integer):

integer;

  vari,p:

integer;flag:

boolean;

  begin

   m:

=m-1;i:

=0;flag:

=False;

   forp:

=2*Ndownto(N+1)do

   begin

    i:

=(i+m)modp;

    if(i

     begin

      test:

=0;flag:

=True;Break;

     end

   end;

   ifnot(flag)thentest:

=1;

  end;

 begin

  read(n);m:

=1;Mark:

=False;

  repeat

   if(test(m,n)=1)then

   beginwriteln(m);break;end;

   m:

=m+1;

  untilMark;

 end.

输入:

7输出:

    

4.programProgramg4;

 varm,n,i,j:

integer;

   p,w,a,b:

array[0..19]ofinteger;

 begin

  read(n);m:

=0;

  fori:

=0ton-1do

  beginread(p[i]);b[i]:

=1;end;

  fori:

=0ton-1do

   begin

    if(i>0)then

    a[m]:

=p[i]-p[i-1]

    else

    a[m]:

=p[i];

    m:

=m+1:

    while((m>1)and(a[rn-1]=0))do

    beginm;=m-1;b[m]:

=l;end;

    if(m>0)then

     w[i]:

=b[m-1]

    else

     w[i]:

=b[0];

     a[m-1]:

=a[m-1]-1;

     forj:

=0tom-1dob[j];=b[j]+1;

     while((m>1)and(a[m-1]=0))do

     begin

      m:

=m-1;b[m]:

=1;

     end;

    end;

    fori:

=0ton-1do

    begin

     write(w[i]);write('');

    end;

    writeln('');

end.

  输入:

9

  466668999

  输出:

    

五.完善程序(共2题,第1题每空3分;第2题每空2分。

共计28分)

  1.翻硬币

  题目描述:

  一摞硬币共有m枚,每一枚都是正面朝上。

取下最上面的一枚硬币,将它翻面后放回原处。

然后取下最上面的2枚硬币,将他们一起翻面后再放回原处。

再取3枚,取4枚……直至m枚。

然后再从这摞硬币最上面的一枚开始,重复刚才的做法。

这样一直做下去,直到这摞硬币中的每一枚又都是正面朝上为止。

例如,m为1时,翻两次即可。

  输入:

仅有的一个数字是这摞硬币的枚数m,0<m<1000。

  输出:

为了使这摞硬币中的每一枚又都是正面朝上所必需翻的次数。

  输入样例:

30

  输出样例:

899

  程序:

      programPrograml;

      varm:

integer;

      functionsolve(m:

integer):

integer;

       vari,t,d:

integer;

         flag:

boolean;

       begin

        if(m=1)then

          solve:

=

(1)

        elsebegin

           d:

=2*m+1;t:

=2;I:

=1;flag:

=False;

           repeat

            if(t=1)then

             begin

              solve:

=

(2);flag:

=True;

             end

            elseif((3))then

                begin

                 so1ve:

=I*m-1;flag:

=True

                end

               else

                t:

=(4)

            I:

=i+1;

           untilflag;

          end

        end;

       begin

        read(m);if(((5))and(m<1000))then

          writeln((6));

       end.

  2.OIM地形

  题目描述:

  二维离散世界有一种地形叫OIM(OIMountain)。

这种山的坡度只能上升('/')或下降('\'),而且两边的山脚都与地平线等高,山上所有地方都不低于地平线。

例如:

  /\         /\

 / \/\是一座OIM:

而/ \不是。

             \/

这个世界的地理学家们为了方便记录,给OIM所有可能的形状用正整数编好号,而且每个正整数恰好对应一种山形。

他们规定,若两座山的宽度不同,则较宽的编号较大;若宽度相同,则比较从左边开始第1个坡度不同的地方,坡度上升的编号较大。

以下三座OIM的编号由小到大递增:

  /\    /\    /\ /\

 / \/\  / \/\/\ / \/ \。

显然/\的编号为1。

但是地理学家在整理记录时发觉,查找编号与山形的对应关系不是很方便。

他们希望能快速地从编号得到山的形状。

你自告奋勇答应给他们写一个程序,输入编号,能马上输出山形。

  输入:

  一个编号(编号大小不超过600,000,000),

  输出:

  输入编号所对应的山形,l座山所占行数恰为它的高度,即山顶上不能有多余空行。

  输入样例:

  15

  输出样例:

    /\ /\

   / \/ \

  程序:

    programProgramg2;

    const

     L:

integer=19;SZ:

integer=50;

     Up:

char='/';DN:

char'\';

    Var

     i,nth,x,y,h,e,f:

integer;

     m:

array[0..1,0..38,0..19]0finteger;

     pic:

array[0..49,0..49]ofchar;

    procedureinit;

     vark,s,a,b,c:

integer;

     begin

      fora:

=0to1do

       forb:

=0to2*Ldo

        forc:

=0toLdo

         m[a,b,c]:

=0;m[0,0,0]:

=1;

      fork:

=0to2*L-1do

      begin

       fors:

=1toLdo

       begin

        m[0,k+1,s]:

=m[0,k,s+1]+m[1,k,s+1];

        m[1,k+1,s]:

=

(1);

       end;

        m[0,k+1,0]:

=m[0,k,1]+m[1,k,1];

       end;

      end:

      proceduredraw(k,s,nth:

integer);

      begin

       if(k=0)thenexit;

       if((nth-m[1,k,s])>=0)then

        begin

         nth:

=nth-m[1,k,s];

         if(y>h)then

(2);

         pic[y,x]:

=UP;y:

=y+1;x:

=x+l;draw((3));

        end

        elsebegin

          y:

=y-1;pic[y,x]:

=DN;x:

=x+1;draw(k-1,s-l,nth);

         end;

      end:

    begin

     init;

     read(nth);

     fore:

=0toSZ-1do

      forf:

=0toSZ-ldo

       pic[e,f]:

='';

       x:

=0;

       y:

=0;

       h:

=0;

       i:

=0;

    while((nth-m[0,2*i,0])>=0)do

    begin

     nth:

=nth-m[0,2*i,0];

     (4);

    end;

    draw((5));

    fori:

=hdownto0do

    begin

     fore:

=0tox-1do

     write(pic[i,e]);

     writeln('');

    end;

   end.

 

第九届全国青少年信息学奥林匹克联赛初赛试题

提高组参考答案

一、单项选择题(共10题,每题1.5分,共计15分。

每题有且仅有一个正确答案)。

题号

1

2

3

4

5

6

7

8

9

10

选择

B

B

D

A

B

B

C

E

C

B

二、不定项选择题(共10题,每题1.5分,共计15分。

多选或少选均不得分)。

题号

11

12

13

14

15

16

17

18

19

20

选择

D

BDE

AD

AB

AC

E

B

BCD

D

BE

三.问题求解(共2题,每题5分,共计10分)

  1.答:

11

  2.答:

4

四.阅读程序(共4题,每题8分,共计32分)

  

(1)程序的运行结果是:

8910

  

(2)程序的运行结果是:

126

  (3)程序的运行结果是:

1872

  (4)程序的运行结果是:

11245ll39

五.完善程序(共2题,第1题每空3分;第2题每空2分。

共计28分)

Pascal语言

==========================

  题一

  

(1)2

  

(2)i*m

  (3)t=2*m

  (4)(t*2)modd

  (5)m>0

  (6)solve(m)

  题二

  

(1)m[0,k,s-1]+m[1,k,s-1]

  

(2)h:

=y

  (3)k-1,s+1,nth

  (4)i:

=i+1

  (5)2*i,0,nth

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1