NOIP2012-初赛提高组C++试题及答案

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

CCFNOIP2012初赛提高组C++1第十八届全国青少年信息学奥林匹克联赛初赛提高组C++语言试题竞赛时间:2012年10月13日14:30~16:30选手注意:试题纸共有15页,答题纸共有2页,满分100分。请在答题纸上作答,写在试题纸上的一律无效。不得使用任何电子设备(如计算器、手机、电子词典等)或查阅任何书籍资料。一、单项选择题(共10题,每题1.5分,共计15分;每题有且仅有一个正确选项)1.目前计算机芯片(集成电路)制造的主要原料是(),它是一种可以在沙子中提炼出的物质。A.硅B.铜C.锗D.铝2.()是主要用于显示网页服务器或者文件系统的HTML文件内容,并让用户与这些文件交互的一种软件。A.资源管理器B.浏览器C.电子邮件D.编译器3.目前个人电脑的()市场占有率最靠前的厂商包括Intel、AMD等公司。A.显示器B.CPUC.内存D.鼠标4.无论是TCP/IP模型还是OSI模型,都可以视为网络的分层模型,每个网络协议都会被归入某一层中。如果用现实生活中的例子来比喻这些“层”,以下最恰当的是()。A.中国公司的经理与缅甸公司的经理交互商业文件第4层中国公司经理缅甸公司经理↑↓↑↓第3层中国公司经理秘书缅甸公司经理秘书↑↓↑↓第2层中国公司翻译缅甸公司翻译↑↓↑↓第1层中国邮递员←→缅甸邮递员CCFNOIP2012初赛提高组C++2B.军队发布命令第4层司令↓第3层军长1军长2↓↓第2层师长1师长2师长3师长4↓↓↓↓第1层团长1团长2团长3团长4团长5团长6团长7团长8C.国际会议中,每个人都与他国地位对等的人直接进行会谈第4层英国女王←→瑞典国王第3层英国首相←→瑞典首相第2层英国外交大臣←→瑞典外交大臣第1层英国驻瑞典大使←→瑞典驻英国大使D.体育比赛中,每一级比赛的优胜者晋级上一级比赛第4层奥运会↑第3层全运会↑第2层省运会↑第1层市运会5.如果不在快速排序中引入随机化,有可能导致的后果是()。A.数组访问越界B.陷入死循环C.排序结果错误D.排序时间退化为平方级6.1946年诞生于美国宾夕法尼亚大学的ENIAC属于()计算机。A.电子管B.晶体管C.集成电路D.超大规模集成电路7.在程序运行过程中,如果递归调用的层数过多,会因为()引发错误。A.系统分配的栈空间溢出B.系统分配的堆空间溢出CCFNOIP2012初赛提高组C++3C.系统分配的队列空间溢出D.系统分配的链表空间溢出8.地址总线的位数决定了CPU可直接寻址的内存空间大小,例如地址总线为16位,其最大的可寻址空间为64KB。如果地址总线是32位,则理论上最大可寻址的内存空间为()。A.128KBB.1MBC.1GBD.4GB9.以下不属于目前3G(第三代移动通信技术)标准的是()。A.GSMB.TD-SCDMAC.CDMA2000D.WCDMA10.仿生学的问世开辟了独特的科学技术发展道路。人们研究生物体的结构、功能和工作原理,并将这些原理移植于新兴的工程技术之中。以下关于仿生学的叙述,错误的是()。A.由研究蝙蝠,发明雷达B.由研究蜘蛛网,发明因特网C.由研究海豚,发明声纳D.由研究电鱼,发明伏特电池二、不定项选择题(共10题,每题1.5分,共计15分;每题有一个或多个正确选项,多选或少选均不得分)1.如果对于所有规模为n的输入,一个算法均恰好进行()次运算,我们可以说该算法的时间复杂度为O(2n)。A.2n+1B.3nC.n*2nD.22n2.从顶点A0出发,对有向图()进行广度优先搜索(BFS)时,一种可能的遍历顺序是A0,A1,A2,A3,A4。图A图BCCFNOIP2012初赛提高组C++4图C图D3.如果一个栈初始时为空,且当前栈中的元素从栈底到栈顶依次为a,b,c(如右图所示),另有元素d已经出栈,则可能的入栈顺序有()。A.a,b,c,dB.b,a,c,dC.a,c,b,dD.d,a,b,c4.在计算机显示器所使用的RGB颜色模型中,()属于三原色之一。A.黄色B.蓝色C.紫色D.绿色5.一棵二叉树一共有19个节点,其叶子节点可能有()个。A.1B.9C.10D.116.已知带权有向图G上的所有权值均为正整数,记顶点u到顶点v的最短路径的权值为d(u,v)。若v1,v2,v3,v4,v5是图G上的顶点,且它们之间两两都存在路径可达,则以下说法正确的有()。A.v1到v2的最短路径可能包含一个环B.d(v1,v2)=d(v2,v1)C.d(v1,v3)≤d(v1,v2)+d(v2,v3)D.如果v1→v2→v3→v4→v5是v1到v5的一条最短路径,那么v2→v3→v4是v2到v4的一条最短路径7.逻辑异或(⊕)是一种二元运算,其真值表如下所示。aba⊕bFalseFalseFalseFalseTrueTrueTrueFalseTrueTrueTrueFalse以下关于逻辑异或的性质,正确的有()。A.交换律:a⊕b=b⊕a栈顶cb栈底aCCFNOIP2012初赛提高组C++5B.结合律:(a⊕b)⊕c=a⊕(b⊕c)C.关于逻辑与的分配律:a⊕(b∧c)=(a⊕b)∧(a⊕c)D.关于逻辑或的分配律:a⊕(b∨c)=(a⊕b)∨(a⊕c)8.十进制下的无限循环小数(不包括循环节内的数字均为0或均为9的平凡情况),在二进制下有可能是()。A.无限循环小数(不包括循环节内的数字均为0或均为1的平凡情况)B.无限不循环小数C.有限小数D.整数9.以下()属于互联网上的E-mail服务协议。A.HTTPB.FTPC.POP3D.SMTP10.以下关于计算复杂度的说法中,正确的有()。A.如果一个问题不存在多项式时间的算法,那它一定是NP类问题B.如果一个问题不存在多项式时间的算法,那它一定不是P类问题C.如果一个问题不存在多项式空间的算法,那它一定是NP类问题D.如果一个问题不存在多项式空间的算法,那它一定不是P类问题三、问题求解(共2题,每题5分,共计10分)1.本题中,我们约定布尔表达式只能包含p,q,r三个布尔变量,以及“与”(∧)、“或”(∨)、“非”(¬)三种布尔运算。如果无论p,q,r如何取值,两个布尔表达式的值总是相同,则称它们等价。例如,(p∨q)∨r和p∨(q∨r)等价,p∨¬p和q∨¬q也等价;而p∨q和p∧q不等价。那么,两两不等价的布尔表达式最多有_________个。2.对于一棵二叉树,独立集是指两两互不相邻的节点构成的集合。例如,图1有5个不同的独立集(1个双点集合、3个单点集合、1个空集),图2有14个不同的独立集。那么,图3有_________个不同的独立集。图1图2图3CCFNOIP2012初赛提高组C++6四、阅读程序写结果(共4题,每题8分,其中第3题的2个小题各4分,共计32分)1.#includeiostreamusingnamespacestd;intn,i,temp,sum,a[100];intmain(){cinn;for(i=1;i=n;i++)cina[i];for(i=1;i=n-1;i++)if(a[i]a[i+1]){temp=a[i];a[i]=a[i+1];a[i+1]=temp;}for(i=n;i=2;i--)if(a[i]a[i-1]){temp=a[i];a[i]=a[i-1];a[i-1]=temp;}sum=0;for(i=2;i=n-1;i++)sum+=a[i];coutsum/(n-2)endl;return0;}输入:84070507020401030输出:_________CCFNOIP2012初赛提高组C++72.#includeiostreamusingnamespacestd;intn,i,ans;intgcd(inta,intb){if(a%b==0)returnb;elsereturngcd(b,a%b);}intmain(){cinn;ans=0;for(i=1;i=n;i++)if(gcd(n,i)==i)ans++;coutansendl;}输入:120输出:_________3.#includeiostreamusingnamespacestd;constintSIZE=20;intdata[SIZE];intn,i,h,ans;voidmerge(){data[h-1]=data[h-1]+data[h];h--;CCFNOIP2012初赛提高组C++8ans++;}intmain(){cinn;h=1;data[h]=1;ans=0;for(i=2;i=n;i++){h++;data[h]=1;while(h1&&data[h]==data[h-1])merge();}coutansendl;}(1)输入:8输出:_________(4分)(2)输入:2012输出:_________(4分)4.#includeiostream#includestringusingnamespacestd;intlefts[20],rights[20],father[20];strings1,s2,s3;intn,ans;voidcalc(intx,intdep){ans=ans+dep*(s1[x]-'A'+1);if(lefts[x]=0)calc(lefts[x],dep+1);if(rights[x]=0)calc(rights[x],dep+1);CCFNOIP2012初赛提高组C++9}voidcheck(intx){if(lefts[x]=0)check(lefts[x]);s3=s3+s1[x];if(rights[x]=0)check(rights[x]);}voiddfs(intx,intth){if(th==n){s3=;check(0);if(s3==s2){ans=0;calc(0,1);coutansendl;}return;}if(lefts[x]==-1&&rights[x]==-1){lefts[x]=th;father[th]=x;dfs(th,th+1);father[th]=-1;lefts[x]=-1;}if(rights[x]==-1){rights[x]=th;father[th]=x;dfs(th,th+1);father[th]=-1;rights[x]=-1;}if(father[x]=0)CCFNOIP2012初赛提高组C++10dfs(father[x],th);}intmain(){cins1;cins2;n=s1.size();memset(lefts,-1,sizeof(lefts));memset(rights,-1,sizeof(rights));memset(father,-1,sizeof(father));dfs(0,1);}输入:ABCDEFBCAEDF输出:_________五、完善程序(第1题第2空3分,其余每空2.5分,共计28分)1.(排列数)输入两个正整数n,m(1≤n≤20,1≤m≤n),在1~n中任取m个数,按字典序从小到大输出所有这样的排列。例如输入:32输出:121321233132#includeiostream#includecstringusingnamespacestd;constintSIZE=25;boolused[SIZE];intdata[SIZE];CCFNOIP2012初赛提高组C++11intn,m,i,j,k;boolflag;intmain(){cinnm;memset(used,false,sizeof(used));for(i=1;i=m;i++){data[i]=i;used[i]=true;}flag=true;while(flag){for(i=1;i=m-1;i++)coutdata[i];coutdata[m]endl;flag=①;for(i=m;i=1;

1 / 16
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功