noip普及组复赛模拟试题17(附答案)
NOIP普和组复赛试题c版本
{
if(d[i+l1][j+l2]!=-1)
d[i+l1][j+l2]++;
}//边上八个位置旳格子不是雷则
数值加1
}
}
}
for(i=1;i<=n;i++)
{
for(j=1;j<=m;j++)
if(
d[i][j]==-1) cout<<'*';
else cout<<d[i][j];
cout<<endl;
-5-
参照程序
➢ #include <iostream>
➢ using namespace std;
➢ int main()
➢{
➢
long d[102][102];
➢
long n,m;
➢
cin>>n>>m;
➢
long i,j;
➢
char ch;
➢
for(i=0;i<=n;i++)
➢
{
➢
for(j=0;j<=m;j++)
➢
for(int i=1;i<=n;i++)
➢
{
- 16 -
BYE
温馨提醒: 先了解题目在看题解。
试题分析
The END
2017. 07. 28
➢ 请计算前K天里,骑士一共取得了多少金币。 ➢ 对于全部数据,1≤K≤10000。
➢ 【分析】K旳规模比较少,直接用模拟,一天一天发金币。 ➢ N天发N枚金币,N递增1,剩余天数K-N ➢ 估计时间15-25分钟
NOIP普及组初赛历年试题及答案选择题篇
NOIP普及组初赛历年试题及答案选择题篇单项选择题:每次共20题,每题1.5分,共计30分。
每题有且仅有一个正确选项。
注:答案在文末一、运算机基础(每一年8-10题,占选择题的一半,找份材料翻几遍就可拿分了)NOIP2020-3. 一片容量为8G的SD卡能贮存大约( )张大小为2MB的数码照片。
A.1600B.2000C.4000D.16000NOIP2020-4. 摩尔定律(Moore'slaw)是由英特尔开创人之一戈登·摩尔(GordonMoor)提出来的。
依照摩尔定律,在过去几十年一级在可预测的以后纪念,单块集成电路的集成度大约每( )个月翻一番。
A.1B.6C.18D.36NOIP2020-6.寄放器是( )的重要组成部份。
A.硬盘B.高速缓存C.内存D.中央处置器(CPU)NOIP2020-10. 有人以为,在个人电脑送修前,将文件放入回收站中确实是已经将其删除。
这种方式是( )。
A .正确的,将文件放入回收站以为着完全删除、无法恢复B.不正确的,只有将回收站清空后,才意味着完全删除、无法恢复C.不正确的,即便回收站清空,文件只是被标记为删除,仍可能通过答复软件找回D.不正确的,只要在硬盘上显现过的文件,永久不可能被完全删除NOIP2020-14. 生物特点识别,是利用人体本身的生物特点进行身份认证的一种技术。
目前,指纹识别、虹膜识别、人脸识别等技术已普遍应用于政府、银行、平安防卫等领域。
以下不属于生物特点识别技术及其应用的是( )。
NOIP2020-16. 关于汇编语言,以下说法错误的选项是( )。
A.是一种与具体硬件相关的程序设计语言B.在编写复杂程序时,相关于高级语言而言代码量较大,且不易调试C.能够直接访问寄放器、内存单元、和I/O端口D.随着高级语言的诞生,现在已完全被淘汰,再也不利用NOIP2020-18. 1956年( )授予肖克利、巴丁和布拉顿,以表彰他们对半导体的研究和晶体管效应的发觉。
noip2017普及组初赛试题+答案
第23届全国青少年信息学奥林匹克联赛初赛普及组C++语言试题竞赛时间:2017年10 月14 日14:30~16:30选手注意:1、试题纸共有8 页,答题纸共有2 页,满分100 分。
请在答题纸上作答,写在试题纸上的一律无效。
2、不得使用任何电子设备(如计算器、手机、电子词典等)或查阅任何书籍资料。
一、单项选择题(共20题,每题1.5分,共计30分;每题有且仅有一个正确选项)1.在 8 位二进制补码中,10101011 表示的数是十进制下的( )。
A. 43B. -85C. -43D. -84解析:补码就是符号位不变,其他各位逐位求反再加一结论:-85 答案B2.计算机存储数据的基本单位是( )。
A. bitB. ByteC. GBD. KB3.下列协议中与电子邮件无关的是( )。
A. POP3B. SMTPC. WTOD. IMAP4.分辨率为 800x600、16 位色的位图,存储图像信息所需的空间为( )。
A.937.5KBB. 4218.75KBC.4320KBD. 2880KB解析:800*600*16/8=A5.计算机应用的最早领域是( )。
A. 数值计算B. 人工智能C. 机器人D. 过程控制6.下列不属于面向对象程序设计语言的是( )。
A. CB. C++C. JavaD. C#解析:新出的语言都是面向对象的,OOP的,旧的不是,答案A7.NOI 的中文意思是( )。
A. 中国信息学联赛B. 全国青少年信息学奥林匹克竞赛C. 中国青少年信息学奥林匹克竞赛D. 中国计算机协会解析:全国青少年信息学奥林匹克竞赛答案:B8. 2017年10月1日是星期日,1999年10月1日是( )。
A. 星期三B. 星期日C. 星期五D. 星期二解析:什么年是闰年?你首先想到的可能是能被4整除的年就是闰年。
实际上这是不正确的,公历里闰年的定义是这种:能被400整除的,或者不能被100整除而能被4整除的年就是闰年,换一句话说,非世纪年份中能被4整除的,和世纪年份中能被400整除的是闰年。
noip普及组复赛模拟试题17(附答案)
图书馆馆长正犯愁呢,原来,有一堆的书要他整理,每本书都有一个书号(<=32767),现在他有一本书,这本书的书号为K(<=32767),现在他要找出一本书号比这本书大的书和书号比这本小的书(但都要最接近图书馆馆长已有的书号),将找到的这两本书的书号加起来,并算出加起来以后的数是否为素数Input第一行二个数为N,K,表示几本书以及手中书的书号(<=32767)第二行开始有N个整数,表示这些书的书号Output第一行一个数,表示两本书书号加起来的和第二行一个字符,表示和是否为素数,若是则输出"Y"否则输出"F"(引号不打出)Sample Input6 56 4 5 3 1 20Sample Output10Fprogram ex1148;var n,k,i,x,s:integer;a:array[0..32767] of integer;f:boolean;beginreadln(n,k);fillchar(a,sizeof(a),0);for i:=1 to n dobeginread(x);a[x]:=1;end;s:=0;for i:=k+1 to 32767 doif a[i]<>0 then begin s:=s+i;break; end;for i:=k-1 downto 1 doif a[i]<>0 then begin s:=s+i;break; end;f:=true;for i:=2 to trunc(sqrt(s)) doif s mod i=0 then begin f:=false;break;end;writeln(s);if f=true then write('Y') else write('F');end.输入12 78 12 18 7 11 3 20 15 14 26 21 16 输出11Y输入21 104 7 12 10 18 29 156 17 3 11 20 21 24 14 2 22 26 13 19 9 输出20F父母准备带你到新疆阿克苏旅行,你很高兴的开始准备旅行。
NOIP2017普及组初赛试题及详细解析
输入: 7 3 输出: ________ 答案:8
递归调用的时候要能够比较清晰的把下面的式子写出来 g(8,4,0)=g(8,3,0)+g(7,3,1)+g(6,3,2)=10+4+1=15 g(8,3,0)=g(8,2,0)+g(7,2,1)+g(6,2,2)=5+3+2=10 g(8,2,0)=g(8,1,0)+g(7,1,1)+g(6,1,2)+g(5,1,3)+g(4,1,4)=5 g(7,2,1)=g(6,1,1)+g(5,1,2)+g(4,1,3)=3 g(6,2,2)=g(4,1,2)+g(3,1,3)=2 g(7,3,1)=g(6,2,1)+g(5,2,2)=3+1=4 g(6,2,1)=g(5,1,1)+g(4,1,2)+g(3,1,3)=3 g(5,2,2)=g(3,1,2)=1 g(6,3,2)=g(4,2,2)=g(2,1,2)=1
最后的 8 不用比较,直接放到 C 中,C[] = {1, 2, 3, 4} 共比较了 3 次,即 2n - 1 次
18. 从()年开始,NOIP 竞赛将不再支持 Pascal 语言。 A. 2020 B. 2021 C. 2022 D. 2023
答案:C 从 2022 年开始,NOIP 将不可使用 C 和 Pascal,只能使用 C++
D.s->next=hs;hs=hs->next; 答案:B
新元素入栈后,要把栈顶指针指到新元素的位置
14. 若串 S = “copyright”,其子串的个数是( )。 A. 72 B. 45 C. 46 D. 36 答案:C
NOIP普及组初赛历年试题及标准答案选择题篇
NOIP普及组初赛历年试题及答案选择题篇————————————————————————————————作者:————————————————————————————————日期:NOIP普及组初赛历年试题及答案选择题篇单项选择题:每次共20题,每题1.5分,共计30分。
每题有且仅有一个正确选项。
注:答案在文末一、计算机基础(每年8-10题,占选择题的一半,找份材料翻几遍就可拿分了)NOIP2011-3. 一片容量为8G的SD卡能储存大约( )张大小为2MB的数码照片。
A.1600B.2000C.4000D.16000NOIP2011-4. 摩尔定律(Moore'slaw)是由英特尔创始人之一戈登·摩尔(GordonMoor)提出来的。
根据摩尔定律,在过去几十年一级在可预测的未来纪念,单块集成电路的集成度大约每( )个月翻一番。
A.1B.6C.18D.36NOIP2011-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年( )授予肖克利、巴丁和布拉顿,以表彰他们对半导体的研究和晶体管效应的发现。
NOIP2021复赛普及组试题
2
5
6
三元组:(x,
y, z),其中 x,y,z 都代表纸带上格子的编号,那个地址的三元组要求知足以下两个条件:
1. , , 都是整数, < < , − = −
2. =
知足上述条件的三元组的分数规定为(x + z) ∗ ( + )。整个纸带的分
纸带如题目描述中的图所示。
所有知足条件的三元组为:(1,3, 5), (4, 5, 6)。
因此纸带的分数为(1 + 5) ∗ (5 + 2) + (4 + 6) ∗ (2 + 2) = 42 + 40 = 82。
【输入输出样例 2】
15 4
1388
5 10 8 2 2 2 9 9 7 7 5 6 4 2 4
该格将会显现一个数字——提示周围格子中有多少个是地雷格。游戏的目标是在不翻出
任何地雷格的条件下,找出所有的非地雷格。
此刻给出 n 行 m 列的雷区中的地雷散布,要求计算出每一个非地雷格周围的地雷格
数。
注:一个格子的周围格子包括其上、下、左、右、左上、右上、左下、右下八个方
向上与之直接相邻的格子。
【输入格式】
S1≤S2≤…≤Sn<108。
接下来的一行有 N 个正整数,其中第 i 个整数 Ai 表示向第 i 户住户推销产品会积存的疲劳
值。数据保证 Ai<103。
【输出格式】
输出文件名为 。
输出 N 行,每行一个正整数,第 i 行整数表示当 X=i 时,阿明最多积存的疲劳值。
【输入输出样例 1】
5
15
12345
19
12345
22
noip普及组初赛模拟考试题[附答案解析]
选择一个正确答案代码(A/B/C/D),填入每题的括号内 (每题1.5分,多选无分, 共30 分)题号 1 2 3 4 5 6 7 8 9 10选择 C D C D D B B A B C题号 11 12 13 14 15 16 17 18 19 20选择 C D D A B C C D C B 二.问题求解(共2题,每题5分,共计10分)1. 当m=4,n=4时选法数=352. 共有多少种选法 1360二. 阅读程序,并写出程序的正确运行结果:(共4题,每题8分,共32分)1. 程序的运行结果是: 1262. 程序的运行结果是: 115 1123.程序的运行结果是:114. 程序的运行结果是: DCBA CDBA CBDA CBAD BDCA BCDA BCAD BADC BACDADCB ACDB ACBD ABDC ABCDNum=14四.根据题意, 将程序补充完整 (每空2.8分,共28分)1.①readln(d,i);②d-1③x*2+1④a[x]:=(4)true;2.①j<=trunc(sqrt(k))②L-1③a[v]<=m④inc(v)⑤s=2*L-1一、选择题:共20题,每题1.5分,共计30分1. 关于计算机语言,正确的说法是(C)。
A.BASIC语言是一种高级语言,每台计算机都必须配备B.汇编语言是一种比BASIC语言更高级的计算机语言C.机器语言是计算机可以直接识别的语言,但编程比较困难D.PASCAL语言是BASIC语言的更高版本2. 计算机接入网络后,它的功能会大大拓展,主要表现在( D )。
A.共享资源与分担负荷 B.数据通讯C.可以使用他人的资源 D.以上三项功能都有【分析与解答】计算机网络能够实现的功能是:数据通讯,资源共享,实现信息的分布式处理和提高计算机系统的可靠性与实用性。
故本题答案为D。
3. 若某数的原码为A7H,则其对应的补码为( C )。
NOIP初赛模拟考试题和答案及解析
信息学奥林匹克联赛初赛模拟试题(普及组 C 语言二小时完成)●●全部试题答案均要求写在答卷纸上,写在试卷纸上一律无效●●一.选择一个正确答案代码(A/B/C/D/E),填入每题的括号内 (每题1.5分, 共30分)1.被誉为“人工智能之父”的是()。
A.冯·诺依曼。
B.巴贝奇。
C.文顿·瑟夫和卡恩。
D.阿兰·图灵。
E.弗雷德里克·特曼。
2.下列哪个不是CPU(中央处理单元)()。
A. Intel ItaniumB. DDR SDRAMC. AMD Athlon64D. AMD OpteronE. IBM Power 53.常见的邮件传输服务器使用()协议发送邮件。
A. HTTPB. SMTPC. TCPD. FTPE. POP34.下列无符号数中,最小的数是()。
A.(11011001)2B.(75)10C.(37)8D.(2A)165.下列哪个软件属于操作系统软件()。
A. Microsoft WordB. PhotoshopC. FoxmailD. WinRARE. Red Hat Linux6.下列哪个不是计算机的存储设备()。
A. 文件管理器B. 内存C. 高速缓存D. 硬盘E. U盘7.组成’教授’(jiao shou )’副教授’(fu jiao shou )与’讲师’( jiang shi)这三个词的汉字,在GB2312-80字符集中都是一级汉字.对这三个词排序的结果是()。
A教授,副教授,讲师 B.副教授,教授,讲师C讲师,副教授,教授 D.副教授,讲师,教授8.彩色显示器所显示的五彩斑斓的色彩,是由红色、蓝色和()色混合而成的。
A. 紫B. 白C. 黑D. 绿E. 橙9.以下哪个软件不是即时通信软件()。
A. 网易泡泡B. MSN MessengerC. Google TalkD. 3DS MaxE. QQ10.一台计算机如果要利用电话线上网,就必须配置能够对数字信号和模拟信号进行相互转换的设备,这种设备是()。
NOIP竞赛模拟试题
NOIP2016普及组复赛模拟赛试卷普及组(请选手务必仔细阅读本页内容)二.提交源程序文件名三.编译命令(不包含任何优化开关)注意事项:1、文件名(程序名和输入输出文件名)必须使用英文小写。
2、C/C++中函数 main()的返回值类型必须是 int,程序正常结束时的返回值必须是 0。
3、统一评测时采用的机器配置为:CPU P4 3.0GHz,内存 2G,上述时限以此配置为准。
4、特别提醒:评测在Windows下进行,评测软件为cena8.0。
River Hopscotch(jump.pas/c/cpp)【问题描述】每年,奶牛们都举办一种特殊的跳房子游戏,在这个游戏中,大家小心翼翼地在河中的岩石上跳。
这个游戏在一条笔直的河中进行,以一块岩石表示开始,以另一块距离起点L单位长度的岩石表示结束。
在这两块岩石中间还有N 块岩石,每块的位置距离起点是 Di 个单位长度。
玩这个游戏的时候,每头牛从开始的那块岩石想办法要跳到表示结束的那块岩石上。
中间只能在从某块岩石跳跃到另一块岩石,反复的这样跳。
当然,不够敏捷的牛永远跳不到终点,最终只能落入河中。
农民 John 为他的牛感到自豪,每年都观看比赛。
随着时间的推移,他对于那些胆小的只能跳过很短距离的牛感到厌烦。
为了那些牛,其他农民会把岩石的间距弄得很小。
他计划移除一些岩石,从而增加奶牛在跳跃时需要的最短距离。
他不能移除开始和结束的两块岩石。
但是除此之外他可以移除 M 块岩石。
FJ 希望知道他能够增加多少最短跳跃距离。
求当他移除了M块岩石后,奶牛从开始跳到结束的岩石,每次跳跃的最短距离至多可以增加到多少。
【输入格式】第1行: 三个用空格分开的整数,分别是 L, N 和 M。
第2..N+1行: 每行一个整数,表示中间N块岩石的位置,没有两块岩石处于同一位置。
【输出格式】输出共一行一个整数,表示移除某M块岩石后,相邻岩石间距最小值的最大可能情况。
【输入样例】25 5 2214112117【输出样例】4【输入说明】中间有 5 块岩石,坐标 2, 11, 14, 17 和 21。
NOIP2017普及组初赛C++试题及答案
for(i= 0;i<s.length();i++)if([s[]]== 1){ cout << s[i]<< endl; return 0;
cout << "no" << endl; return 0;
六
输入∶xyzxyw
输出∶_
。。;
。 。 。。 。。人;人
三、阅读程序写结果(共 4题,每题 8分,共计 32 分)
1.#include using namespace std;
一int main(){ int t[256]; string s; int i;
cin >> s;
for (i=0;i<256;i++)t[i]=0;
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.下列不属于面向对象程序设计语言的是()。
e2)]
countcm 或 m>Count
O)]
lbound<ubound1 或I ubound>lbound
而
25
2.5
[m
(lboundubound+1)div 2或
(lbound+ubound+1》/2 或
(④) (1boundrubound+1)shr 1或
(lboundvubound+1)>1 或
示每条绳子的长度,第三行是一个不超过10°的正整数 m。 输出∶绳段的最大长度,若无法切割,输出 Failed。
noip普及组初赛模拟试卷17(附答案)
选择题1.计算机的特点是处理速度快、计算精度高、存储容量大、可靠性高、工作全自动以及___C____ A)造价低廉B)便于大规模生产C)适用范围广、通用性强D)体积小巧2.下列关于操作系统的主要功能的描述中,不正确的是______D______A)处理器管理B)作业管理C)文件管理D)信息管理3.计算机病毒按照感染的方式可以进行分类,以下哪一项______D______不是其中一类?A)引导区型病毒B)文件型病毒C)混合型病毒D)附件型病毒4.计算机按其性能可以分为5大类,即巨型机、大型机、小型机、微型机和________A___________ A)工作站B)超小型机C)网络机D)以上都不是5.下列关于计算机的叙述中,不正确的一条是_______A________A)高级语言编写的程序称为目标程序B)指令的执行是由计算机硬件实现的C)国际常用的ASCII码是7位ASCII码D)超级计算机又称为巨型机6.下列关于计算机的叙述中,不正确的一条是______C______A)CPU由ALU和CU组成B)内存储器分为ROM和RAMC)最常用的输出设备是鼠标D)应用软件分为通用软件和专用软件7.以下关于汇编语言的描述中,错误的是_______D_______A)汇编语言诞生于20世纪50年代初期B)汇编语言不再使用难以记忆的二进制代码C)汇编语言使用的是助记符号D)汇编程序是一种不再依赖于机器的语言8.CPU、存储器、I/O设备是通过什么连接起来的?_______B_____A)接口B)总线C)系统文件D)控制线9.下列关于计算机的叙述中,正确的一条是_____A_______A)系统软件是由一组控制计算机系统并管理其资源的程序组成B)有的计算机中,显示器可以不与显示卡匹配C)软盘分为5.25和3.25英寸两种D)磁盘就是磁盘存储器10.我国第一台电子计算机诞生于哪一年?______B______A)1948年B)1958年C)1966年D)1968年11.以下关于病毒的描述中,正确的说法是________C______A)只要不上网,就不会感染病毒B)只要安装最好的杀毒软件,就不会感染病毒C)严禁在计算机上玩电脑游戏也是预防病毒的一种手段D)所有的病毒都会导致计算机越来越慢,甚至可能使系统崩溃12. Web2.0是近年来互联网热门概念之一,其核心是互动与分享。
NOIP2022-17届NOIP(C语言)普及组初赛试题
NOIP2022-17届NOIP(C语言)普及组初赛试题17届NOIP(C语言)普及组初赛试题一、单项选择题(共20题,每题1.5分,共计30分。
每题有且仅有一个正确选项。
)1.在二进制下,1101001+()=1110110。
A.1011B.1101C.1010D.11112.字符“0”的ASCII码为48,则字符“9”的ASCII码为()。
A.39B.57C.120D.视具体的计算机而定3.一片容量为8GB的SD卡能存储大约()张大小为2MB的数码照片。
A.1600B.2000C.4000D.160004.摩尔定律(Moore'slaw)是由英特尔创始人之一戈登•摩尔(GordonMoore)提出来的。
根据摩尔定律,在过去几十年以及在可预测的未来几年,单块集成电路的集成度大约每()个月翻一番。
A.1B.6C.18D.365.无向完全图是图中每对顶点之间都恰有一条边的简单图。
已知无向完全图G有7个顶点,则它共有()条边。
A.7B.21C.42D.496.寄存器是()的重要组成部分。
A.硬盘B.高速缓存C.内存D.中央处理器(CPU)7.如果根结点的深度记为1,则一棵恰有2022个叶结点的二叉树的深度最少是()。
A.10B.11C.12D.138.体育课的铃声响了,同学们都陆续地奔向操场,按老师的要求从高到矮站成一排。
每个同学按顺序来到操场时,都从排尾走向排头,找到第一个比自己高的同学,并站在他的后面。
这种站队的方法类似于()算法。
A.快速排序B.插入排序C.冒泡排序D.归并排序9.一个正整数在二进制下有100位,则它在十六进制下有()位。
A.7B.13C.25D.不能确定10.有人认为,在个人电脑送修前,将文件放入回收站中就是已经将其删除了。
这种想法是()。
A.正确的,将文件放入回收站意味着彻底删除、无法恢复B.不正确的,只有将回收站清空后,才意味着彻底删除、无法恢复C.不正确的,即使将回收站清空,文件只是被标记为删除,仍可能通过恢复软件找回 D.不正确的,只要在硬盘上出现过的文件,永远不可能被彻底删除11.广度优先搜索时,需要用到的数据结构是()。
NOIP2017复赛普与组试题(卷)
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 分。
【输入输出样例 1】【输入输出样例 1 说明】牛牛的作业成绩是 100 分,小测成绩是 100 分,期末考试成绩是 80 分,总成绩是100×20%+100×30%+80×50%=20+30+40=90。
【输入输出样例 2】【输入输出样例 2 说明】牛牛的作业成绩是 60 分,小测成绩是 90 分,期末考试成绩是 80 分,总成绩是60×20%+90×30%+80×50%=12+27+40=79。
NOIP2017普及组复赛-解题报告
NOIP2017普及组复赛-解题报告衢州市兴华中学By 冯明浩给出三个整十数A,B,C ,求A*20%+B*30%+C*50%的值模拟直接粗暴地输出A*0.2+B*0.3+C*0.5时间复杂度:O(1) 期望得分:100由于分数均为整十数,先将分数各除以10,再直接输A*2+B*3+C*5。
这样就避免了精度问题时间复杂度:O(1) 期望得分:100给出N 个数Ai ,再进行Q 次询问,找后缀为给定数Bi 的最小的Ai模拟将Ai 及Bi 都转化成字符串。
每次询问都对N 个数进行后缀比较,挑出个最小的时间复杂度:O(N*Q*len) 期望得分:80 对算法一的比较进行优化——构造出n 10,对于Ai ,直接Ai Mod 10len ,判断是否相等。
这样每次比较的时间复杂度优至O(1)同时先将Ai 排序,再每次从小到大查询,一旦找到就停时间复杂度:小于O(N*Q)(一般情况) 期望得分:100读入Ai 时进行处理,构造ans[x]数组,记录询问X 的最小值。
对于每个Ai ,依次取出其后1、2、3……len 位,修正其的最小值。
这样每次查询,就可以O (1)出结果了时间复杂度:O(N*len) 空间复杂度:O(max(Bi)) 期望得分:100给出一个N*N 的矩阵,其中部分格有颜色每次可以从一个格向上下左右四个方向移动一格(不能越出矩阵且满足条件),根据两个格子的颜色有不同的代价求从左上角走至右下角的最小代价最短路(动态规划)直接暴力地按照题意进行DFS时间复杂度:O(n n *2) 期望得分:30以左上角为起点,右下角为终点,刷四个方向的SPFA(也可预先对相邻格建好边,刷最短路SPFA 或DIJ 或进行记忆化DFS )时间复杂度:O(k*n*n) 期望得分:100给出N 个格子的位置Xi 与价值Pi ,从起点0往右跳跃,初始跳跃的距离只能为d同时可以花费金币来调整其跳跃距离,花了t 个金币时可跳跃的距离为max(1,d-t)~(d+k)每遍历一个格子就会获得其代价Pi ,求要获得总价值为K 所需最少的金币数二分、动态规划、单调序列(堆)从小到大枚举所需金币数,用O(N*N)的DP 进行check ,一旦发现可行就为答案时间复杂度:O(max(Ai)*N*N) 期望得分:20分析发现,枚举的金币数越多,跳跃范围越大,总价值一定越多——满足二分答案的单调性,于是将算法一的枚举答案变为二分枚举时间复杂度:O()max(2log Xi *N*N) 期望得分:50 分析一下DP 的转移方程:F[i]=max(F[j])+P[i](max(1,d-t)≤a[i]-a[j]≤d+k)就会发现DP 的j 这次循环是为了找F[1~i-1]中的最大值,自然而然就想到了用堆优化——堆中存放F[1~i-1],若堆顶距当前X[i]大于d+k ,就丢掉该元素(再也没用)否则若堆顶距当前X[i]小于max(1,d-t),就暂存在临时数组中,最后在当前解更新好后记得塞回去则F[i]=F[heap[1]]+P[i]时间复杂度:O()max(2log Xi *N*k*N 2log ) 期望得分:80 继续优化算法三的DP :那些离当前X[i]太近的实际上完全没有必要塞入堆中,那么再另开一个变量j 记录当前往堆中塞入的最后一个元素。
NOIP2017普及组初赛试题及答案【范本模板】
NOIP2017普及组初赛试题及答案文字标黑部分为试题答案。
一、单项选择题(共20题,每题1.5分,共计30分;每题有且仅有一个正确选项)1.在8位二进制补码中,10101011表示的数是十进制下的()。
A. 43B. -85C. -43 D。
—842.计算机存储数据的基本单位是( )。
A。
bit B。
Byte C. GB D. KB3。
下列协议中与电子邮件无关的是( )。
A. POP3B. SMTPC. WTO D。
IMAP4。
分辨率为800x600、16位色的位图,存储图像信息所需的空间为().A.937。
5KB B。
4218。
75KBC。
4320KB D. 2880KB5。
计算机应用的最早领域是()。
A。
数值计算B。
人工智能C.机器人D.过程控制6.下列不属于面向对象程序设计语言的是( ).A. CB. 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. 19210。
设G是有n个结点、m条边(n ≤m)的连通图,必须删去G的( )条边,才能使得G变成一棵树。
A.m–n+1 B。
m-nC. m+n+1D.n–m+111.对于给定的序列{ak},我们把(i, j)称为逆序对当且仅当i < j且ai〉aj。
那么序列1,7,2, 3,5, 4的逆序对数为()个.A。
4 B。
5 C。
6 D。
712。
表达式a * (b + c)*d的后缀形式是()。
A。
abcd*+* B。
abc+*d*C. a*bc+*d D。
b+c*a*d13.向一个栈顶指针为hs的链式栈中插入一个指针s指向的结点时,应执行( ).A。
NOIP2017普及组复赛试题
1.成绩【问题描述】牛牛最近学习了C++入门课程,这门课程的总成绩计算方法是:总成绩=作业成绩×20%+小测成绩×30%+期末考试成绩×50%牛牛想知道,这门课程自己最终能得到多少分。
【输入格式】输入文件只有1行,包含三个非负整数A、B、C,分别表示牛牛的作业成绩、小测成绩和期末考试成绩。
相邻两个数之间用一个空格隔开,三项成绩满分都是100分。
【输出格式】输出文件只有1行,包含一个整数,即牛牛这门课程的总成绩,满分也是100分。
【输入输出样例1】score.in score.out1001008090【输入输出样例1说明】牛牛的作业成绩是100分,小测成绩是100分,期末考试成绩是80分,总成绩是100×20%+100×30%+80×50%=20+30+40=90。
【输入输出样例2】score.in score.out60908079【输入输出样例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的整数倍。
2.图书管理员【问题描述】图书馆中每本书都有一个图书编码,可以用于快速检索图书,这个图书编码是一个正整数。
每位借书的读者手中有一个需求码,这个需求码也是一个正整数。
如果一本书的图书编码恰好以读者的需求码结尾,那么这本书就是这位读者所需要的。
小D刚刚当上图书馆的管理员,她知道图书馆里所有书的图书编码,她请你帮她写一个程序,对于每一位读者,求出他所需要的书中图书编码最小的那本书,如果没有他需要的书,请输出-1。
【输入格式】输入文件的第一行,包含两个正整数n和q,以一个空格分开,分别代表图书馆里书的数量和读者的数量。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
图书馆馆长正犯愁呢,原来,有一堆的书要他整理,每本书都有一个书号(<=32767),现在他有一本书,这本书的书号为K(<=32767),现在他要找出一本书号比这本书大的书和书号比这本小的书(但都要最接近图书馆馆长已有的书号),将找到的这两本书的书号加起来,并算出加起来以后的数是否为素数Input第一行二个数为N,K,表示几本书以及手中书的书号(<=32767)第二行开始有N个整数,表示这些书的书号Output第一行一个数,表示两本书书号加起来的和第二行一个字符,表示和是否为素数,若是则输出"Y"否则输出"F"(引号不打出)Sample Input6 56 4 5 3 1 20Sample Output10Fprogram ex1148;var n,k,i,x,s:integer;a:array[0..32767] of integer;f:boolean;beginreadln(n,k);fillchar(a,sizeof(a),0);for i:=1 to n dobeginread(x);a[x]:=1;end;s:=0;for i:=k+1 to 32767 doif a[i]<>0 then begin s:=s+i;break; end;for i:=k-1 downto 1 doif a[i]<>0 then begin s:=s+i;break; end;f:=true;for i:=2 to trunc(sqrt(s)) doif s mod i=0 then begin f:=false;break;end;writeln(s);if f=true then write('Y') else write('F');end.输入12 78 12 18 7 11 3 20 15 14 26 21 16 输出11Y输入21 104 7 12 10 18 29 156 17 3 11 20 21 24 14 2 22 26 13 19 9 输出20F父母准备带你到新疆阿克苏旅行,你很高兴的开始准备旅行。
现在你有M元钱,可以采购N种物品,每种物品最多可以购买Ai件(也可以不购买),每购买一件会花费Ci元,并能产生Vi的价值。
请算出你能买的物品的最大价值和。
【输入】第一行,两个整数M,N用空格隔开。
后面N行,每行三个整数用空格隔开Ai、Ci、Vi【输出】一个整数,能买的物品的最大价值和【输入输出样例】【输入输出样例说明】购买第二种物品1件,第三中物品2件。
vara: array[1..100, 1..3] of longint;m, n: longint;i, j, k, ans: longint;f: array[0..10000] of longint;function max(a, b: longint): longint;beginif a > b thenexit(a)exit(b);end;function min(a, b: longint): longint;beginif a < b thenexit(a)elseexit(b);end;beginAssign(input, 'prepare.in');Assign(output, 'prepare.out');reset(input);rewrite(output);readln(m, n);for i := 1 to n doreadln(a[i, 1], a[i, 2], a[i, 3]);for i := 1 to n doif a[i, 1] * a[i, 2] > m thenfor j := a[i, 2] to m dof[j] := max(f[j], a[i, 3] + f[j - a[i, 2]])begink := 1;while k < a[i, 1] dobeginfor j := m downto k * a[i, 2] dof[j] := max(f[j], k * a[i, 3] + f[j - k * a[i, 2]]);a[i, 1] := a[i, 1] - k;k := k shl 1;end;for j := m downto a[i, 1] * a[i, 2] dof[j] := max(f[j], a[i, 1] * a[i, 3] + f[j - a[i, 1] * a[i, 2]]); end;writeln(f[m]);Close(input);Close(output);end.输入 100 51 30 62 20 53 40 74 35 45 50 8 输出 19输入 300 62 120 153 150 124 100 165 110 96 90 14 输出 48【问题描述】给定一个数列{an},这个数列满足ai≠aj(i≠j),现在要求你把这个数列从小到大排序,每次允许你交换其中任意一对数,请问最少需要几次交换?【输入文件】第一行,正整数n (n<=100,000)。
以下若干行,一共n个数,用空格分隔开,表示数列{an},任意-231<ai<231。
【输出文件】只有一行,包含一个数,表示最少的交换次数。
【样例输入】88 23 4 16 77 -5 53 100【样例输出】5将序列排序找出所有的循环,即错误位置调换的循环如 2 4 1 3 循环为2->4->3->1->2 Ans=sigma 循环长度-1参考程序:vara,b:array[0..1000000]of longint;n,i,j,tot,t,ans:longint;use:array[0..1000000]of boolean; procedure qsort(l,r:longint);vari,j,x,t:longint;begini:=l; j:=r; x:=a[random(r-l+1)+l];repeatwhile a[i]<x do inc(i);while a[j]>x do dec(j);if i<=j thenbegint:=a[i]; a[i]:=a[j]; a[j]:=t;t:=b[i]; b[i]:=b[j]; b[j]:=t;inc(i);dec(j);end;until i>j;if i<r then qsort(i,r);if l<j then qsort(l,j);end;beginassign(input,'seqsort.in');reset(input);readln(n);for i:=1 to n dobeginread(a[i]);b[i]:=i;end;close(input);qsort(1,n);for i:=1 to n doa[i]:=i;for i:=1 to n doif not use[i] thenbegint:=i;tot:=0;while not use[t] dobeginuse[t]:=true;inc(tot);t:=b[t];end;ans:=ans+tot-1;end;assign(output,'seqsort.out');rewrite(output);writeln(ans);close(output);end.输入1518 25 -30 76 125 67 45 -72 186 100 29 14 88 77 127 输出13输入2425 18 30 60 200 -104 -32 90 88 64 187 45 36 62 78 94 13 33 24 -56 82 140 189 71 输出18【问题描述】Matrix67要在下个月交给老师n篇论文,论文的内容可以从m个课题中选择。
由于课题数有限,Matrix67不得不重复选择一些课题。
完成不同课题的论文所花的时间不同。
具体地说,对于某个课题i,若Matrix67计划一共写x篇论文,则完成该课题的论文总共需要花费Ai*x^Bi个单位时间(系数Ai和指数Bi均为正整数)。
给定与每一个课题相对应的Ai和Bi的值,请帮助Matrix67计算出如何选择论文的课题使得他可以花费最少的时间完成这n篇论文。
【输入文件】第一行有两个用空格隔开的正整数n和m,分别代表需要完成的论文数和可供选择的课题数。
以下m行每行有两个用空格隔开的正整数。
其中,第i行的两个数分别代表与第i个课题相对应的时间系数Ai和指数Bi。
【输出文件】输出完成n篇论文所需要耗费的最少时间。
【样例输入】10 32 11 22 1【样例输出】19【样例说明】4篇论文选择课题一,5篇论文选择课题三,剩下一篇论文选择课题二,总耗时为2*4^1+1*1^2+2*5^1=8+1+10=19。
可以证明,不存在更优的方案使耗时小于19。
【数据规模与约定】对于30%的数据,n<=10,m<=5;对于100%的数据,n<=200,m<=20,Ai<=100,Bi<=5。
var a,b,i,j,k,n,m:integer;c:array[1..20,1..200] of int64; {预处理数组}f:array[0..200] of int64;beginassign(input,'mat.in');assign(output,'mat.out');reset(input);rewrite(output);readln(n,m);for k:=1 to m do beginreadln(a,b);for i:=1 to n do beginc[k,i]:=a;for j:=1 to b doc[k,i]:=c[k,i]*i;end;end;f[0]:=0;for i:=1 to n dof[i]:=100000000000000000;for k:=1 to m dofor i:=n-1 downto 0 dofor j:=1 to n-i doif f[i]+c[k,j]<f[i+j] then {DP核心动态转移方程} f[i+j]:=f[i]+c[k,j];writeln(f[n]);close(input);close(output);end.输入20 52 11 22 12 11 2 输出 38输入 16 72 33 13 22 12 33 21 3 输出 31。