NOIP2015初赛普及组C++题目及答案
NOIP2015初赛普及组C++题目及答案 (2)
选手注意:第二十一届全国青少年信息学奥林匹克联赛初赛普及组C++语言试题竞赛时间:2015年10月11日14:3016:30试题纸共有7页,答题纸共有2页,满分100分。
请在答题纸上作答,写在试题纸上的一律无效。
不得使用任何电子设备(如计算器、手机、电子词典等)或查阅任何书籍资料。
一、单项选择题(共20题,每题分,共计30分;每题有且仅有一个正确选项)1. 1MB等于()。
字节字节字节字节2. 在PC机中,PENTIUM (奔腾)、酷睿、赛扬等是指()。
A.生产厂家名称B.硬盘的型号的型号 D.显示器的型号3. 操作系统的作用是()。
A.把源程序译成目标程序B.便于进行数据管理C. 控制和管理系统资源D.实现硬件之间的连接4. 在计算机内部用来传送、存贮、加工处理的数据或指令都是以()形式进行的。
A.二进制码B.八进制码C.十进制码D.智能拼音码5. 下列说法正确的是()。
A. CPU的主要任务是执行数据运算和程序控制B. 存储器具有记忆能力,其中信息任何时候都不会丢失C. 两个显示器屏幕尺寸相同,则它们的分辨率必定相同D. 个人用户只能使用Wifi的方式连接到Internet6. 二进制数00100100和00010100的和是()。
A. 00101000 010000017. 与二进制小数相等的十六进制数是()A. 0.8 0.4 所谓的“中断”是指()。
A. 操作系统随意停止一个程序的运行B. 当出现需要时,CPU暂时停止当前程序的执行转而执行处理新情况的过程C. 因停机而停止一个程序的运行D. 电脑死机9. 计算机病毐是()。
A. 通过计算机传播的危害人体健康的一种病毒B. 人为制造的能够侵入计算机系统并给计算机带来故障的程序或指令集合C. 一种由于计算机元器件老化而产生的对生态环境有害的物质D. 利用计算机的海量高速运算能力而研制出来的用于疾病预防的新型病毒可以用于()。
A.远程传输文件B.发送电子邮件C.浏览网页D.网上聊天11.下面哪种软件不属于即时通信软件()。
noip2015普及组题解最终
本次试题前2题比较简单,34题容易拿到部分分,但满分有难度1. 金币(coin.cpp/c/pas)【问题描述】国王将金币作为工资,发放给忠诚的骑士。
第一天,骑士收到一枚金币;之后两天(第二天和第三天),每天收到两枚金币;之后三天(第四、五、六天),每天收到三枚金币;之后四天(第七、八、九、十天),每天收到四枚金币……;这种工资发放模式会一直这样延续下去:当连续N天每天收到N枚金币后,骑士会在之后的连续N+1天里,每天收到N+1枚金币。
请计算在前K天里,骑士一共获得了多少金币。
【输入格式】输入文件名为coin.in。
输入文件只有1行,包含一个正整数K,表示发放金币的天数。
【输出格式】输出文件名为coin.out。
输出文件只有1行,包含一个正整数,即骑士收到的金币数。
【样例输入】coin.in6【样例输出】coin.out14【输入输出样例1说明】骑士第一天收到一枚金币;第二天和第三天,每天收到两枚金币;第四、五、六天,每天收到三枚金币。
因此一共收到1+2+2+3+3+3=14枚金币。
【数据范围】对于100%的数据,1 ≤K ≤10,000。
【题解】关注到K的范围是10000后,就不需要考虑数学公式,纯模拟就行,考点就是for循环了var i,j,count,n,ans:longint;beginassign(input,'coin.in');reset(input);assign(output,'coin.out');rewrite(output);readln(n);for i:=1 to 1000 dofor j:=1 to i dobegininc(count);inc(ans,i);if count=n then beginwriteln(ans);close(input);close(output);halt;end;end;end.2.扫雷游戏(mine.cpp/c/pas)【问题描述】扫雷游戏是一款十分经典的单机小游戏。
最新NOIP初赛普及组C++试题及参考答案资料
精品文档第二十一届全国青少年信息学奥林匹克联赛初赛普及组C++语言试题竞赛时间:2015 年10 月11 日14:30-16:30一、单项选择题(共20 题,每题1.5 分,共计30 分;每题有且仅有一个正确选项)⒈1MB 等于( )。
A.10000 字节B.1024 字节C.1000×1000字节D.1024×1024字节⒉在PC 机中,PENTIUM(奔腾)、酷睿、赛扬等是指( )。
A.生产厂家名称 B.硬盘的型号 C.CPU 的型号 D.显示器的型号⒊操作系统的作用是( )。
A.把源程序译成目标程序B.便于进行数据管理C.控制和管理系统资源D.实现硬件之间的连接⒋在计算机内部用来传送、存贮、加工处理的数据或指令都是以( )形式进行的。
A.二进制码B.八进制码C.十进制码D.智能拼音码⒌下列说法正确的是( )。
A.CPU 的主要任务是执行数据运算和程序控制B.存储器具有记忆能力,其中信息任何时候都不会丢失C.两个显示器屏幕尺寸相同,则它们的分辨率必定相同D.个人用户只能使用Wifi 的方式连接到Internet⒍二进制数00100100 和00010100 的和是( )。
A.00101000B.01100111C.01000100D.00111000⒎与二进制小数0.1 相等的十六进制数是( )。
A.0.8B.0.4C.0.2D.0.1⒏所谓的“中断”是指( )。
A.操作系统随意停止一个程序的运行B.当出现需要时,CPU 暂时停止当前程序的执行转而执行处理新情况的过程C.因停机而停止一个程序的运行D.电脑死机⒐计算机病毒是( )。
A.通过计算机传播的危害人体健康的一种病毒B.人为制造的能够侵入计算机系统并给计算机带来故障的程序或指令集合C.一种由于计算机元器件老化而产生的对生态环境有害的物质D.利用计算机的海量高速运算能力而研制出来的用于疾病预防的新型病毒⒑FTP 可以用于( )。
NOIP2015普及组复赛试题讲解(c++版本)
- 16 -
试题分析
BYE
温馨提示:
先理解题目在看题解。
The END
2017. 07. 28
数值加1 } }
d[i][j]=-1;//用-1表示地雷 long l1,l2; for(l1=-1;l1<=1;l1++) for(l2=-1;l2<=1;l2++) { if(d[i+l1][j+l2]!=-1) d[i+l1][j+l2]++; }//边上八个位置的格子不是雷则
if(
} for(i=1;i<=n;i++) { for(j=1;j<=m;j++) d[i][j]==-1) cout<<'*'; else cout<<d[i][j]; cout<<endl; }//输出 return 0;
-3-
第2题 “扫雷游戏”简述
扫雷游戏是一款十分经典的单机小游戏。 在n行m列的雷区中有一些格子含有地雷(称之为地雷格), 其他格子不含地雷(称之为非地雷格)。 玩家翻开一个非地雷格时,该格将会出现一个数字——提 示周围格子中有多少个是地雷格。 游戏的目标是在不翻出任何地雷格的条件下,找出所有的 非地雷格。 现在给出n行m列的雷区中的地雷分布,要求计算出每个非 地雷格周围的地雷格数。 注:一个格子的周围格子包括其上、下、左、右、左上、 左下、右上、右下八个方向上与之直接相邻的格子。
【分析】K的规模比较少,直接用模拟,一天一天发金币。 N天发N枚金币,N递增1,剩余天数K-N 预计时间15-25分钟
-2-
参考程序 C++
noip2015普及组解题报告
1. 金币 (coin.cpp/c/pas)【问题描述】国王将金币作为工资,发放给忠诚的骑士。
第一天,骑士收到一枚金币;之后两天(第二天和第三天),每天收到两枚金币;之后三天(第四、五、六天),每天收到三枚金币;之后四天(第七、八、九、十天),每天收到四枚金币……;这种工资发放模式会一直这样延续下去:当连续N天每天收到N枚金币后,骑士会在之后的连续N+1天里,每天收到N+1枚金币。
请计算在前K天里,骑士一共获得了多少金币。
【输入格式】输入文件名为coin.in。
输入文件只有1行,包含一个正整数K,表示发放金币的天数。
【输出格式】输出文件名为coin.out。
输出文件只有1行,包含一个正整数,即骑士收到的金币数。
【样例输入】coin.in6【样例输出】coin.out14【输入输出样例1说明】骑士第一天收到一枚金币;第二天和第三天,每天收到两枚金币;第四、五、六天,每天收到三枚金币。
因此一共收到1+2+2+3+3+3=14 枚金币。
【数据范围】对于100%的数据,1 ≤K ≤10,000。
【题解】纯模拟,直接爆搜,考点就是 for 循环#include "stdio.h"#include "iostream"using namespace std;int main(){freopen("coin.in","r",stdin);freopen("coin.out","w",stdout);int n,i=1,ans=0;cin>>n;while(n){if(n>=i){n-=i;ans+=i*i;}else{ans+=i*n;n=0;}i++;}cout<<ans<<endl;return 0;}2.扫雷游戏(mine.cpp/c/pas)【问题描述】扫雷游戏是一款十分经典的单机小游戏。
noip205信息学奥赛普及组初赛c++试题
2015年第二十一届全国青少年信息学奥林匹克联赛初赛普及组C++语言试题竞赛日寸间:2015年10月l 1日14:30~16:30选手注意:●试题纸共有7页,答题纸共有2页,满分100分。
请在答题纸上作答,写在试题纸上的一律无效。
●不得使用任何电子设备(如计算器、手机、电子词典等)或查阅任何书籍资料。
一、单项选择题(共20题,每题1.5分,共计30分;每题有且仅有一个正确选项)1.1MB等于( )。
A.1000字节 B.1024字节C.1000X 1000字节 D.1024X 1024字节2.在PC机中,PENTIUM(奔腾)、酷睿、赛扬等是指( )。
A.生产厂家名称 B.硬盘的型号 C.CPU的型号 D.显示器的型号3.操作系统的作用是( )。
A.把源程序译成目标程序 B.便于进行数据管理C.控制和管理系统资源 D.实现硬件之间的连接4.在计算机内部用来传送、存贮、加工处理的数据或指令都是以( )形式进行的。
A.二进制码 B.八进制码 C.十进制码 D.智能拼音码5.下列说法正确的是( )。
A.CPU的主要任务是执行数据运算和程序控制B.存储器具有记忆能力,其中信息任何时候都不会丢失C.两个显示器屏幕尺寸相同,则它们的分辨率必定相同D.个人用户只能使用Wifi的方式连接到Internet6.二进制数00100100和00010100的和是( )。
A. 00101000B. 01001001C. 01000100D.001110007.与二进制小数0.1相等的十六进制数是( )。
A. 0.8 B. 0.4 C. 0.2 D. 0.18.所谓的“中断”是指( )。
A.操作系统随意停止一个程序的运行B.当出现需要时,CPU暂时停止当前程序的执行转而执行处理新情况的过程C.因停机而停止一个程序的运行D.电脑死机9.计算机病毒是( )。
A.通过计算机传播的危害人体健康的一种病毒B.人为制造的能够侵入计算机系统并给计算机带来故障的程序或指令集合C.一种由于计算机元器件老化而产生的对生态环境有害的物质D.利用计算机的海量高速运算能力而研制出来的用于疾病预防的新型病毒10.FTP可以用于( )。
NOIP2015年初赛普和组C 题目和答案解析
第二十届全国青少年信息学奥林匹克联赛初赛普及组C++语言试题2014年一、快单项选择题(共20题,每题1.5分,共计30分;每题有且仅有一个正确选项)⒈以下哪个是面向对象的高级语言( )。
A.汇编语言B.C++C.FortranD.Basic⒉1TB代表的字节数是( )。
A.2的10次方B.2的20次方C.2的30次方D.2的40次方⒊二进制数00100100和00010101的和是( )。
A.00101000B.001010100C.01000101D.00111001⒋以下哪一种设备属于输出设备( )。
A.扫描仪B.键盘C.鼠标D.打印机⒌下列对操作系统功能的描述最为完整的是( )。
A.负责外设与主机之间的信息交换B.负责诊断机器的故障C.控制和管理计算机系统的各种硬件和软件资源的使用D.将没有程序编译成目标程序⒍CPU、存储器、I/O设备是通过( )连接起来的。
A.接口B.总线C.控制线D.系统文件⒎断电后会丢失数据的存储器是( )。
A.RAMB.ROMC.硬盘D.光盘⒏以下哪一种是属于电子邮件收发的协议( )。
A.SMTPB.UDPC.P2PD.FTP⒐下列选项中不属于图像格式的是( )。
A.JPEG格式B.TXT格式C.GIF格式D.PNG格式⒑链表不具有的特点是( )。
A.不必事物估计存储空间B.可随机访问任一元素C.插入删除不需要移动元素D.所需空间与线性表长度成正比⒒下列各无符号十进制整数中,能用八位二进制表示的数中最大的是( )。
A.296B.133C.256D.199⒓下列几个32位IP地址中,书写错误的是( )。
A.162.105.135.27B.192.168.0.1C.256.256.129.1D.10.0.0.1⒔要求以下程序的功能是计算:s=1+1/2+1/3+...+1/10。
#include <iostream>using namespace std;int main(){int n;float s;s = 1.0;for(n = 10; n > 1; n--)s = s + 1 / n;cout << s << endl;return 0;}程序运行后输出结果错误,导致错误结果的程序行是( )。
noip2015初赛普及组c题目及答案
选手注意:第二十一届全国青少年信息学奥林匹克联赛初赛普及组C++语言试题竞赛时间:2015 年10 月11 日14:30〜16:30•试题纸共有7 页,答题纸共有2 页,满分100 分。
请在答题纸上作答,写在试题纸上的一律无效。
•不得使用任何电子设备(如计算器、手机、电子词典等)或查阅任何书籍资料。
一、单项选择题(共20 题,每题1.5 分,共计30 分;每题有且仅有一个正确选项)1. 1MB 等于()。
A. 1000 字节B. 1024 字节C.1000 X 1000 字节D. 1024 X 1024 字节2. 在PC 机中,PENTIUM (奔腾)、酷睿、赛扬等是指()。
A.生产厂家名称B.硬盘的型号C. CPU 的型号D.显示器的型号3. 操作系统的作用是()。
A.把源程序译成目标程序B.便于进行数据管理C. 控制和管理系统资源D.实现硬件之间的连接4. 在计算机内部用来传送、存贮、加工处理的数据或指令都是以()形式进行的。
A. 二进制码B.八进制码C.十进制码D.智能拼音码5. 下列说法正确的是()。
A. CPU 的主要任务是执行数据运算和程序控制B. 存储器具有记忆能力,其中信息任何时候都不会丢失C. 两个显示器屏幕尺寸相同,则它们的分辨率必定相同D. 个人用户只能使用Wifi 的方式连接到Internet6. 二进制数00100100 和00010100 的和是()。
A. 00101000B.C. 01000100D. 001110007. 与二进制小数0.1 相等的十六进制数是()B. C. 0.2 D. 0.18. 所谓的“中断”是指()。
A. 操作系统随意停止一个程序的运行B. 当出现需要时,CPU 暂时停止当前程序的执行转而执行处理新情况的过程C. 因停机而停止一个程序的运行D. 电脑死机9. 计算机病毐是()。
A. 通过计算机传播的危害人体健康的一种病毒B. 人为制造的能够侵入计算机系统并给计算机带来故障的程序或指令集合C. 一种由于计算机元器件老化而产生的对生态环境有害的物质D. 利用计算机的海量高速运算能力而研制出来的用于疾病预防的新型病毒10. FTP 可以用于()。
Noip2015年初赛提高组C试题和答案解析
Noip2014初赛提高组试题及答案(完整版)提高组C 语言试题、单项选择题(每题1.5分,共22.5分)。
1. 以下哪个是面向对象的高级语言 ().A.汇编语言B. C++C. FORTRAND. Basic2. 1TB 代表的字节数量是().A. 2 的10次方B. 2 的20次方C. 2 的30次方D. 2 的40次方 3. 二进制数 00100100 和 00010101 的和是(). A. 00101000 B. 001010100 C. 01000101 D. 00111001 4. TCP 协议属于哪一层协议(). A.应用层 B. 传输层 C.网络层 D.数据链路层5. 下列几个32位IP 地址中,书写错误的是().A. 162.105.128.27B. 192.168.0.1C. 256.256.129.1D. 10.0.0.1 6. 在无向图中,所有定点的度数之和是边数的 ()倍.A. 0.5B. 1C. 2D. 4int data;struct node *n ext; } *p,*q,*r;7. 对长度位n 的有序单链表,若检索每个元素的概率相等,则顺序检索到表中任一元素的 平均检索长度为(). A. n/2 B. (n+1)/2 C. (n -1)/2 D. n/4 8. 编译器的主要功能是(). A. B. C.将一种高级语言翻译成另一种高级语言 将源程序翻译成指令 将低级语言翻译成高级语言 将源程序重新组合 D. 9. 二进制数111.101所对应的十进制数是(). A. 5.625 B. 5.5 C. 6.12510. 若有变量 int x+a%3*(i nt)(x+y)%2/4 A. 2.500000 B. 2.750000 D. 7.625 11. 有以下结构体说明和变量定义, 结点。
struct node { n ext a, float x, y, 且 的值大约是(). C. 3.500000 D. 0.000000 如图所示,指针 y, data next data next a=7, x=2.5, y=4.7, 则表达式 p 、q 、r 分别指向一个链表中的三个续 data以下程序段中错误的是现要将q和r所指结点的先后位置交换,同时要保持链表的连续,().A.q->n ext = r->n ext; p-> n ext = r; r->n ext = q;B.p->n ext = r; q->n ext = r->n ext; r->next = q;C.q->next = r->n ext; r->n ext = q; p->n ext = r;D.r->next = q; q_>next = r->n ext; p_>n ext = r;12.同时查找2n个数中的最大值和最小值,最少比较次数为().A. 3(n-2)/2B. 4n-2C. 3n-2D. 2n-213.设G是有6个结点的完全图,要得到一颗生成树,需要从G中删去()条边.A. 6B. 9C. 10D. 1514.以下时间复杂度不是0(n2)的排序方法是().A.插入排序B.归并排序C.冒泡排序D.选择排序15.以下程序实现了找第二小元素的算法。
noip初赛普及组c试题及答案
n o i p初赛普及组c试题及答案文件管理序列号:[K8UY-K9IO69-O6M243-OL889-F88688]第十届全国青少年信息学奥林匹克联赛初赛试题(普及组C语言二小时完成)●●全部试题答案均要求写在答卷纸上,写在试卷纸上一律无效●●一.选择一个正确答案代码(A/B/C/D/E),填入每题的括号内(每题1.5分,共30分)1.美籍匈牙利数学家冯·诺依曼对计算机科学发展所做出的贡献是()。
A.提出理想计算机的数学模型,成为计算机科学的理论基础。
B.是世界上第一个编写计算机程序的人。
C.提出存储程序工作原理,并设计出第一台具有存储程序功能的计算机EDVAC。
D.采用集成电路作为计算机的主要功能部件。
E.指出计算机性能将以每两年翻一番的速度向前发展。
2.下列哪个不是CPU(中央处理单元)()。
A.IntelItaniumB.DDRSDRAMC.AMDAthlon64D.AMDOpteronE.IBMPower53.下列网络上常用的名字缩写对应的中文解释错误的是()。
A.WWW(WorldWideWeb):万维网。
B.URL(UniformResourceLocator):统一资源定位器。
C.HTTP(HypertextTransferProtocol):超文本传输协议。
D.FTP(FileTransferProtocol):快速传输协议。
E.TCP(TransferControlProtocol):传输控制协议。
4.下面哪个部件对于个人桌面电脑的正常运行不是必需的()。
A.CPUB.图形卡(显卡)C.光驱D.主板E.内存5.下列哪个软件属于操作系统软件()。
A.MicrosoftWordB.金山词霸C.FoxmailD.WinRARE.RedHatLinux6.下列哪个不是计算机的存储设备()。
A.文件管理器B.内存C.高速缓存D.硬盘E.U盘7.下列说法中错误的是()。
A.CPU的基本功能就是执行指令。
2015年大学生英语竞赛(NECCS)C类初赛真题试卷(题后含答案及解析)
2015年大学生英语竞赛(NECCS)C类初赛真题试卷(题后含答案及解析)题型有:1. Listening Comperhension 2. V ocabulary and Structure 3. Cloze 4. Reading Comperhension 5. Error Correction 6. Translation 7. IQ Test 8. WritingPart I Listening ComperhensionSection A听力原文:M: Have you ever heard the saying, “Clothes make the man”? It might be truer than we imagine. W: When a police officer or firefighter puts on their uniform it must affect their psychology. It probably gives them a sense of responsibility and authority. M: Absolutely. When a judge puts on that heavy black robe it transmits an image of power, but it also serves a reminder to the judge of the responsibility of their position.1.What does the conversation imply?A.Great minds think alike.B.You are what you wear.C.A contented mind is a perpetual feast.D.Actions speak louder than words.正确答案:B解析:对话开始时男士提到“Clothes make the man(人要衣装)”,接下来女士和男士列举了警察、消防员和法官的例子,说明了那些职业特有的衣服会影响穿衣者的心理,给他们一种责任感和权威性(a sense of responsibility and authority),因此该对话暗示了,穿什么样的衣服就决定了你是什么样的人,即You are what you wear.故本题选B项。
NOIP2015普及组复赛试题讲解(c++版本)
数据结构
SIZE=100005 数组大小 int color[SIZE]; 格子的颜色值 int num[SIZE]; ,格子上的数值 int sum[2][SIZE]; 相同颜色分奇偶求和 int d[2][SIZE]; 相同颜色的数量,分奇偶统计 数据输入量较多,使用scanf();
sum+=2*y*(number[yj]+number[y+j]); sum%=10007;
}
j++;
} } cout<<sum<<endl; return 0;
-9-
确定解题思路
观察题意可以得知,如果第i位和第j位同色,那么 就一定能够组成一个三元组,并且三元组的价值完 全与中间那个数无关。那么,我们就用一个数组存 储同奇偶性的同色方块,用n表示数值,i和j表示坐 标。那么价值就是(ni+nj)*(i+j) 每组的数的下标用a1~an表示,数值用n1~nk表 示,用sum表示数值之和。答案就是 (n1+n2)*(a1+a2)+……+……。如果这样做就是 O(n^2/m)的算法。(估计能过60分) 转换公式(a1*n1+a2*n2+…+ak*nk)*(n-2)+ (a1+a2+…+ak)*(n1+n2+…nk) O(n)的时间复杂度
} -6-
第3题 “求和”简述
一条狭长的纸带被均匀划分出了n个格子,格子编号从1到 n。每个格子上都染了一种颜色colori(用[1,m]当中的一 个整数表示),并且写了一个数字numberi。
定义一种特殊的三元组:(x, y, z),其中x,y,z都代表纸 带上格子的编号,这里的三元组要求满足以下两个条件: x, y, z都是整数, x<y<z ,y−x=z−y colorx = colorz 满足上述条件的三元组的分数规定为 (x+z)∗(numberx+numberz)。整个纸带的分数规定为所有 满足条件的三元组的分数的和。这个分数可能会很大,你 只要输出整个纸带的分数除以 10,007 所得的余数即可。 - 7 -
2015年ICPC初赛题解
改编自经典题陶陶摘苹果。
#include<cstdio>#include<cstring>#include<cmath>#include<algorithm>using namespace std;#define ts printf("****\n");const int MAXN=1005;int n,m,tt;int main(){int i,j,k;while(scanf("%d%d",&n,&m)!=EOF) {int a,sum=0;for(i=0;i<n;i++){scanf("%d",&a);if(a<m) sum++;}printf("%d\n",sum);}}【B】CCF第三次认证的签到题。
#include<cstdio>#include<cstring>#include<cmath>#include<algorithm>using namespace std;#define ts printf("****\n");#define cl(a) memset(a,0,sizeof(a)); const int MAXN=1005;int n,m,tt;int hash[2100000];int main(){int i,j,k;cl(hash);while(scanf("%d",&n)!=EOF){n‐=12216000;hash[n]++;printf("%d\n",hash[n]);}【C】原题是NOIP2014普及组的签到题,因为要求得到的比例数字很小,直接循环枚举即可。
#include<cstdio>#include<cstring>#include<cmath>#include<algorithm>using namespace std;#define ts printf("****\n");#define cl(a) memset(a,0,sizeof(a));const int MAXN=1005;int n,m,tt,l;int gcd(int a,int b){if(b==0) return a;return gcd(b,a%b);}int lcm(int a,int b){return a/gcd(a,b)*b;}int main(){int i,j,k;while(scanf("%d%d%d",&n,&m,&l)!=EOF){double a1=(double)n/m;bool flag=0;int fx,fy;double min=1000001;for(i=1;i<=l;i++){for(j=1;j<=l;j++){if(gcd(i,j)==1){double a2=(double)i/j;if(a2>=a1){if(a2‐a1<min){fx=i,fy=j;min=a2‐a1;}}}}}printf("%d %d\n",fx,fy);}}【D】搜索加剪枝,也可以动态规划。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
NOIP2015初赛普及组C++题目及答案选手注意:第二十一届全国青少年信息学奥林匹克联赛初赛普及组C++语言试题竞赛时间:2015 年10 月11 日14:30〜16:30•试题纸共有7 页,答题纸共有2 页,满分100 分。
请在答题纸上作答,写在试题纸上的一律无效。
•不得使用任何电子设备(如计算器、手机、电子词典等)或查阅任何书籍资料。
一、单项选择题(共20题,每题1.5分,共计30分;每题有且仅有一个正确选项)1. 1MB 等于()。
A. 1000 字节B. 1024 字节C.1000 X1000 字节 D. 1024 X1024 字节2. 在PC 机中,PENTIUM (奔腾)、酷睿、赛扬等是指()。
A.生产厂家名称B.硬盘的型号C. CPU 的型号 D.显示器的型号3. 操作系统的作用是()。
A.把源程序译成目标程序B.便于进行数据管理C. 控制和管理系统资源D.实现硬件之间的连接4. 在计算机内部用来传送、存贮、加工处理的数据或指令都是以()形式进行的。
A. 二进制码B.八进制码C.十进制码D.智能拼音码5. 下列说法正确的是()。
A. C PU 的主要任务是执行数据运算和程序控制B. 存储器具有记忆能力,其中信息任何时候都不会丢失 C.两个显示器屏幕尺寸相同,则它们的分辨率必定相同 D.个人用户只能使用 Wifi 的方式连接到 Internet6. 二进制数 00100100 和 00010100 的和是( )。
A. 00101000B. 01000001C. 01000100D. 001110007. 与二进制小数 0.1 相等的十六进制数是( )A. 0.8B. 0.4C. 0.2D. 0.18. 所谓的“中断”是指( )。
A. 操作系统随意停止一个程序的运行B. 当出现需要时,CPU 暂时停止当前程序的执行转而执行处理新情况的过程C. 因停机而停止一个程序的运行D. 电脑死机9. 计算机病毐是( )。
A. 通过计算机传播的危害人体健康的一种病毒B. 人为制造的能够侵入计算机系统并给计算机带来故障的程序或指令集合C. 一种由于计算机元器件老化而产生的对生态环境有害的物质D. 利用计算机的海量高速运算能力而研制出来的用于疾病预防的新型病毒10. FTP 可以用于( ) 。
A.远程传输文件B.发送电子邮件 C .浏览网页D.网上聊天11. 下面哪种软件不属于即时通信软件( )。
A. QQB. MSNC.微信D. P2P12. 6 个顶点的连通图的最小生成树,其边数为( )。
A. 6B. 5C. 7D. 413. 链表不具备的特点是( )。
A . 可随机访问任何一个元素 B . 插入、删除操作不需要移动元素C无需事先估计存储空间大小D 所需存储空间与存储元素个数成正比1 / 614. 线性表若采用链表存储结构,要求内存中可用存储单元地址()A.必须连续B.部分地址必须连续C.一定不连续 D.连续不连续均可15. 今有一空栈S,对下列待进栈的数据元素序列a,b,c,d,e,f 依次进行进栈,进栈,出栈,进栈,进栈,出栈的操作,则此操作完成后,栈S 的栈顶元素为()。
A. fB. cC. aD. b16. 前序遍历序列与中序遍历序列相同的二叉树为()。
A. 根结点无左子树的二叉树B. 根结点无右子树的二叉树C. 只有根结点的二叉树或非叶子结点只有左子树的二叉树D. 只有根结点的二叉树或非叶子结点只有右子树的二叉树17. 如果根的高度为1,具有61 个结点的完全二叉树的高度为()。
A. 5B. 6C. 7D. 818. 下列选项中不属于视频文件格式的是()。
A. TXTB. AVIC. MOVD. RMVB19. 设某算法的计算时间表示为递推关系式T(n)=T(n-1)+n(n 为正整数)及T(0) = 1,则该算法的时间复杂度为()。
A. O(logn)B. O(n log n)C. O(n)D. O(n2)20. 在NOI 系列赛事中参赛选手必须使用由承办单位统一提供的设备。
下列物品中不允许选手自带的是()。
A.鼠标B.笔C.身份证D.准考证二、问题求解(共2题,每题5分,共计10分;每题全部答对得5分,没有部分分)1. 重新排列1234 使得每一个数字都不在原来的位置上,一共有种排法。
2. —棵结点数为2015 的二叉树最多有个叶子结点。
三、阅读程序写结果(共4题,每题8分,共计32分)1.#include<iostream> usingnamespace std;int main() {int a,b,c;a=1;b=2;c=3;if (a > c){if(a>c)cout << a <<" ";else cout << b <<" ";}cout << c << endl;return 0;}输出:2 / 62.#include <iostream>using namespace std;struct point {int x;int y;};int main() {struct EX { inta; int b;point c;} e;e.a=1;e.b=2;e.c.x = e.a + e.b;e.c.y = e.a * e.b;cout << e.c.x << ","<< e.c.y <<endl;return 0;}输出:3.#include <iostream>#include<string> usingnamespace std;int main() {string str;int i;int count;count = 0;getline(cin,str);for (i = 0; i < str.length(); i++) {if(str[i] >= 'a' && str[i] <= 'z')count++;}cout << "It has " << count << " lowercases" << endl;return 0;}输入:NOI2016 will be held in Mian Yang.输出:3 / 64.#include <iostream>using namespace std;void fun(char *a, char *b) {a = b;(*a)++;}int main() {char cl, c2, *p1, *p2;cl = 'A'; c2 = 'a'; p1 = &cl; p2 = &c2;fun(p1, p2);cout << cl << c2 << endl;return 0;}输出:四、完善程序(共2题,每题14分,共计28分)1.(打印月历)输入月份m (1 ≤m ≤12),按一定格式打印2015 年第m月的月历。
(第三、四空2.5 分,其余3分)例如,2015 年1月的月历打印效果如下(第一列为周日):S M T W T F S1234567891111213141516118192021222322526272829303#include <iostream>using namespace std;const int dayNum[]= {-l, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};int mj offset, i;int main() {cin >> m;cout << " S\tM\tT\tW\tT\tF\tS " endl; // '\t'为 TAB 制表符(1) ;for (i = 1; i < m; i++)offset = (2) ;for (i = 0; i < offset; i++)cout << '\t';for (i = 1; i <= (3) ;i++){cout << (4) ;4 / 6if (i == dayNum[m] || (5) == 0)cout << endl;elsecout << '\t';}return 0;}2. (中位数)给定n(n 为奇数且小于1000)个整数,整数的范围在0〜m (0 < m < 231) 之间,请使用二分法求这n个整数的中位数。
所谓中位数,是指将这n个数排序之后,排在正中间的数。
(第五空2分,其余3分)#include <iostream>using namespace std;const int MAXN = 1000;int n, i, lbound, rbound, mid, m, count;int x[MAXN];int main(){cin >> n >> m;for (i = 0; i < n; ++i)cin >> x[i];lbound=0;rbound=m;while ( (1) ) {mid = (lbound + rbound )/2;(2) ;for (i = 0; i < n; i++)if ( (3) )(4) ;if (count > n / 2) lbound = mid + 1;else(5) ;}cout << rbound << endl;return 0;}5 / 6NOIP2015初赛普及组参考答案 C & C++ 一、单项选择题DCCAA DABBA DBADB DBADA二、问题求解1、92、1008三、阅读程序1、32、3,23、It has 18 lowercases4、Ab四、完善程序1、(1)offset=4(2)(offset+dayNum[i])%7(3)dayNum[m](4)i(5)(offset+i)%72、(1)lbound<rbound 或rbound>lbound(2)count=0(3)x[i]>mid 或mid<x[i](4)count++ 或count=count+1(5)rbound=mid6 / 6。