CCF NOIP2014复赛提高组一等奖获奖名单

CCF NOIP2014复赛提高组一等奖获奖名单
CCF NOIP2014复赛提高组一等奖获奖名单

CCF NOIP2014复赛提高组一等奖获奖名单

noip普及组复赛模拟试题26(答案)

1.数字反转(reverse.cpp/c/pas)【问题描述】给定一个整数,请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零(参见样例2)。【输入】输入文件名为reverse.in。 输入共 1 行,一个整数N。 【输出】输出文件名为reverse.out。 输出共 1 行,一个整数,表示反转后的新数。 【输入输出样例1】reverse.in reverse.out 123 321 【输入输出样例2】Reverse.in reverse.out -380 -83 【数据范围】-1,000,000,000 ≤N≤1,000,000,000。 var s3,s1,s2:string; n,i:integer; begin assign(input,'reverse.in');reset(input); assign(output,'reverse.out');rewrite(output); read(s1); n:=length(s1); if s1[1]='-' then begin s2:='-'; for i:=1 to n-1 do s1[i]:=s1[i+1]; delete(s1,n,1); end; n:=length(s1); for i:=1 to n do s3:=s3+s1[n-i+1]; i:=1; while(s3[i]='0')and(length(s3)>1) do delete(s3,1,1); write(s2+s3); close(input);close(output); end. 2.统计单词数(stat.cpp/c/pas)【问题描述】一般的文本编辑器都有查找单词的功能,该功能可以快速定位特定单词在文章中的位置,有的还能统计出特定单词在文章中出现的次数。 现在,请你编程实现这一功能,具体要求是:给定一个单词,请你输出它在给定的文章 中出现的次数和第一次出现的位置。注意:匹配单词时,不区分大小写,但要求完全匹配, 即给定单词必须与文章中的某一独立单词在不区分大小写的情况下完全相同(参见样例1), 如果给定单词仅是文章中某一单词的一部分则不算匹配(参见样例2)。 【输入】输入文件名为stat.in,2 行。 第 1 行为一个字符串,其中只含字母,表示给定单词; 第 2 行为一个字符串,其中只可能包含字母和空格,表示给定的文章。

NOIP2015提高组复赛试题Day2

全国信息学奥林匹克联赛(2015)复赛 提高组 2 (请选手务必仔细阅读本页内容) 一.题目概况 二.提交源程序文件名 三.编译命令(不包含任何优化开关) 1、文件名(程序名和输入输出文件名)必须使用英文小写。 2、中函数 ()的返回值类型必须是,程序正常结束时的返回值必须是 0。 3、全国统一评测时采用的机器配置为: () x2 240 ,2.8,内存 4G,上述时限以此配置为准。 4、只提供格式附加样例文件。 5、特别提醒:评测在当前最新公布的下进行,各语言的编译

器版本以其为准。

1.跳石头 () 【问题描述】 一年一度的“跳石头”比赛又要开始了! 这项比赛将在一条笔直的河道中进行,河道中分布着一些巨大岩石。组委会已经选择好了两块岩石作为比赛起点和终点。在起点和终点之间,有 N 块岩石(不含起点和终点的岩石)。在比赛过程中,选手们将从起点出发,每一步跳向相邻的岩石,直至到达终点。 为了提高比赛难度,组委会计划移走一些岩石,使得选手们在比赛过程中的最短跳跃距离尽可能长。由于预算限制,组委会至多从起点和终点之间移走 M 块岩石(不能移走起点和终点的岩石)。 【输入格式】 输入文件名为。 输入文件第一行包含三个整数 L,N,M,分别表示起点到终点的距离,起点和终点之间的岩石数,以及组委会至多移走的岩石数。 接下来 N 行,每行一个整数,第 i 行的整数(0 < < L)表示第 i 块岩石与起点的距离。这些岩石按与起点距离从小到大的顺序给出,且不会有两个岩石出现在同一个位置。 【输出格式】 输出文件名为。 输出文件只包含一个整数,即最短跳跃距离的最大值。 【输入输出样例 1】 【输入输出样例 1 说明】 将与起点距离为 2 和 14 的两个岩石移走后,最短的跳跃 距离为 4(从与起点距离 17 的岩石跳到距离 21 的岩石,或者

noip2014普及组复赛题解

1.珠心算测验 注意看清题意:其中有多少个数,恰好等于集合中另外两个(不同 的)数之和。这样的题意加上100的规模,建议暴力3个for: #include #include #include #include using namespace std; int n; int a[105]; int main(){ freopen("count.in","r",stdin); freopen("count.out","w",stdout); scanf("%d",&n); for(int i=1; i<=n; i++){ scanf("%d",&a[i]); } sort(a+1,a+n+1); int res=0; for(int i=1; i<=n; i++){ int ok=0; for(int j=1; j<=n && !ok; j++) if(j!=i){ for(int k=1; k<=n && !ok; k++) if(a[k]!=a[j]){ if(a[j]+a[k]==a[i]) ok=1; } } res+=ok; } printf("%d\n",res); return 0; } 2.比例简化 L很小,还是枚举,然后比较的话建议用乘法比较,避免精度问题:#include #include #include using namespace std; int A,B,L; int gcd(int a,int b){ if(b==0) return a; return gcd(b,a%b); } int main(){ freopen("ratio.in","r",stdin); freopen("ratio.out","w",stdout); scanf("%d%d%d",&A,&B,&L); int ba=1000000,bb=1; for(int i=1; i<=L; i++){ for(int j=1; j<=L; j++){ if(gcd(i,j)==1 && i*B>=j*A){

计算机科学与探索论文模板

题目(中文标题必须严格限制在20字内,如超出可采用副标题形式) 作者名1+, 作者名2, 作者名3 NAME Name-name1+, NAME Name2, NAME Name-name3 1.单位全名部门(系)全名,省市(或直辖市) 邮政编码 2.单位全名部门(系)全名,省市(或直辖市) 邮政编码 3.单位全名部门(系)全名,省市(或直辖市) 邮政编码 1.Department of ****, University, City ZipCode, China 2.Department of ****, University, City ZipCode, China 3.Department of ****, University, City ZipCode, China + Corresponding author: Phn: +86-**-****-****, Fax: +86-**-****-****, E-mail: ****, http://**** Title(英文标题不宜超过10个实词) Abstract: *Abstract.* Key words: *key word; key word; key word * 摘要: *摘要内容*(中英文摘要的具体要求请参考投稿须知) 关键词: *关键词;关键词;关键词*(3~8个) 文献标识码: A 中图法分类号: **** *正文部分.*(为方便作者,论文单双栏排无要求,字体均为五号即可) 1 一级标题 1.1 二级标题 1.1.1 三级标题 2 …. 3 ….(公式请用公式编辑器编辑) 4 结束语 定义1 *定义名称* *定义内容.*[“定理”、“引理”、“算法”等的排版格式与此相同] 证明*证明过程.*[“例”等的排版格式相同] Supported by the **** Foundation of China under Grant No.****, **** (基金中文完整名称); the **** Foundation of China under Grant No.****, **** (基金中文完整名称) [需中英文齐全] Received 2004-00-00; Accepted 2004-00-00

noip普及组复赛模拟试题18

1. 话说去年苹果们被陶陶摘下来后都很生气,于是就用最先进的克隆技术把陶陶克隆了好多份>.<然后把他们挂在树上,准备摘取。摘取的规则是,一个苹果只能摘一个陶陶,且只能在它所能摘到的高度以下(即是小于关系)的最高的陶陶,如果摘不到的话只能灰溜溜的走开了>.<给出苹果数目及每个苹果可以够到的高度和各个陶陶的高度,求苹果们都摘完后剩下多少个陶陶…… 【输入格式】第一行为两个数,分别为苹果的数量n和陶陶的数量m(n,m<=2000)以下的n行,分别为各个苹果能够到的最大高度。再接下来的m行,分别为各个陶陶的高度。高度均不高于300。 当然了,摘取的顺序按照输入的“苹果够到的最大高度”的顺序来摘。 【输出格式】输出仅有一个数,是剩下的陶陶的数量 【样例输入】5 5↙9↙10↙2↙3↙1↙6↙7↙8↙9↙10 【样例输出】3 2. 某小学最近得到了一笔赞助,打算拿出其中一部分为学习成绩优秀的前5名学生发奖学金。期末,每个学生都有3门课的成绩:语文、数学、英语。先按总分从高到低排序,如果两个同学总分相同,再按语文成绩从高到低排序,如果两个同学总分和语文成绩都相同,那么规定学号小的同学排在前面,这样,每个学生的排序是唯一确定的。 任务:先根据输入的3门课的成绩计算总分,然后按上述规则排序,最后按排名顺序输出前5名学生的学号和总分。注意,在前5名同学中,每个人的奖学金都不相同,因此,你必须严格按上述规则排序。例如,在某个正确答案中,如果前两行的输出数据(每行输出两个数:学号、总分)是:7 279 5 279 这两行数据的含义是:总分最高的两个同学的学号依次是7号、5号。这两名同学的总分都是279(总分等于输入的语文、数学、英语三科成绩之和),但学号为7的学生语文成绩更高一些。如果你的前两名的输出数据是:5 279 7 279则按输出错误处理,不能得分。【输入】输入文件scholar.in包含n+1行: 第1行为一个正整数n,表示该校参加评选的学生人数。 第2到n+1行,每行有3个用空格隔开的数字,每个数字都在0到100之间。第j行的3个数字依次表示学号为j-1的学生的语文、数学、英语的成绩。每个学生的学号按照输入顺序编号为1~n(恰好是输入数据的行号减1)。 所给的数据都是正确的,不必检验。 【输出】输出文件scholar.out共有5行,每行是两个用空格隔开的正整数, 依次表示前5名学生的学号和总分。 【输入输出样例1】 scholar.in scholar.out 6 90 67 80 87 66 91 78 89 91 88 99 77 67 89 64 78 89 98 6 265 4 264 3 258 2 244 1 237 【输入输出样例2】 scholar.in scholar.out 8 80 89 89 8 265 2 264

NOIP2015提高组

CCF全国信息学奥林匹克联赛(NOIP2015)复赛 提高组 day1 (请选手务必仔细阅读本页内容) 注意事项: 1、文件名(程序名和输入输出文件名)必须使用英文小写。 2、C/C++中函数main()的返回值类型必须是int,程序正常结束时的返回值必须是0。 3、全国统一评测时采用的机器配置为:CPU AMD Athlon(tm) II x2 240 processor,2.8GHz, 内存4G,上述时限以此配置为准。 4、只提供Linux格式附加样例文件。 5、特别提醒:评测在当前最新公布的NOI Linux下进行,各语言的编译器版本以其为准。

1.神奇的幻方 (magic.cpp/c/pas) 【问题描述】 幻方是一种很神奇的 N?N 矩阵:它由数字 1,2,3,……,N?N 构成,且每行、每列及两条对角线上的数字之和都相同。 当 N 为奇数时,我们可以通过以下方法构建一个幻方: 首先将 1 写在第一行的中间。 之后,按如下方式从小到大依次填写每个数 K(K=2,3,…,N?N) : 1.若(K?1)在第一行但不在最后一列,则将 K 填在最后一行,(K?1)所在列 的右一列; 2.若(K?1)在最后一列但不在第一行,则将 K 填在第一列,(K?1)所在行的上 一行; 3.若(K?1)在第一行最后一列,则将 K 填在(K?1)的正下方; 4.若(K?1)既不在第一行,也不在最后一列,如果(K?1)的右上方还未填数, 则将K填在(K?1)的右上方,否则将 K 填在(K?1)的正下方。 现给定 N,请按上述方法构造 N?N 的幻方。 【输入格式】 输入文件名为magic.in。 输入文件只有一行,包含一个整数 N,即幻方的大小。 【输出格式】 输出文件名为magic.out。 输出文件包含 N行,每行 N个整数,即按上述方法构造出的 N?N 的幻方。相邻两个整数之间用单个空格隔开。 magic/magic1.in magic/magic1.ans 【输入输出样例2】 见选手目录下的magic/magic2.in和magic/magic2.ans。 【数据规模与约定】 对于 100% 的数据,1≤N≤39 且 N 为奇数。

NOIP1999普及组(复赛)

第五届全国青少年信息学(计算机)奥林匹克分区联赛复赛试题 (普及组 竞赛用时:3小时) 第一题 Cantor 表(30分) 现代数学的著名证明之一是Georg Cantor 证明了有理数是可枚举的。他是用下面这一张表来证明这一命题的: 我们以Z 字形给上表的每一项编号。第一项是1/1,然后是1/2,2/1,3/1,2/2,… 输入:整数N (1≤N ≤10000000) 输出:表中的第N 项 样例: INPUT OUTPUT N=7 1/4 第二题 回文数(30分) 若一个数(首位不为零)从左向右读与从右向左读都一样,我们就将其称之为回文数。 例如:给定一个10进制数56,将56加56(即把56从右向左读),得到121是一个回文数。 又如:对于10进制数87: STEP1:87+78 = 165 STEP2:165+561 = 726 STEP3:726+627 = 1353 STEP4:1353+3531 = 4884 在这里的一步是指进行了一次N 进制的加法,上例最少用了4步得到回文数4884。 写一个程序,给定一个N (2<=N<=10,N=16)进制数M ,求最少经过几步可以得到回文数。如果在30步以内(包含30步)不可能得到回文数,则输出“Impossible !” 样例: INPUT OUTPUT N = 9 M= 87 STEP=6 第三题 旅行家的预算(40分) 一个旅行家想驾驶汽车以最少的费用从一个城市到另一个城市(假设出发时油箱是空的)。给定两个城市之间的距离D1、汽车油箱的容量C (以升为单位)、每升汽油能行驶的距离D2、出发点每升汽油价格P 和沿途油站数N (N 可以为零),油站i 离出发点的距离Di 、每升汽油价格Pi (i=1,2,…,N )。计算结果四舍五入至小数点后两位。如果无法到达目的地,则输出“No Solution ”。 样例: INPUT … 1/1 1/2 1/3 1/4 1/5 … 2/1 2/2 2/3 2/4 … 3/1 3/2 3/3 … 4/1 4/2 … 5/1 … …

《计算机科学与探索》(期刊的论文模板)

ISSN 1673-9418 CODEN JKYTA8 E-mail: fcst@https://www.360docs.net/doc/238308534.html, Journal of Frontiers of Computer Science and Technology https://www.360docs.net/doc/238308534.html, 1673-9418/2012/06(00)-0000-00 Tel: +86-10-51616056 DOI: 10.3778/j.issn.1673-9418.2012.00.000 题目*(中文标题必须严格限制在20字内,如超出可采用副标题形式;标题中尽量避免出现“基于”“一种”字样) 作者名1+, 作者名2, 作者名3 1. 单位全名学院(系)全名, 省市(或直辖市) 邮政编码 2. 单位全名学院(系)全名, 省市(或直辖市) 邮政编码 3. 单位全名学院(系)全名, 省市(或直辖市) 邮政编码 Title*(英文标题不宜超过10个实词) NAME Name1+, NAME Name2, NAME Name3 1. College/School (Department) of ****, University, City ZipCode, China 2. College/School (Department) of ****, University, City ZipCode, China 3. College/School (Department) of ****, University, City ZipCode, China + Corresponding author: Phn: +86-**-****-****, Fax: +86-**-****-****, E-mail: ****, http://**** Author. Title. Journal of Frontiers of Computer Science and Technology, 2012, 6(0): 1 000. Abstract: *Abstract.* (行文最好不用第一人称做主语如:We….)详细编写要求见“摘要编写规范”。 Key words: *key word; key word; key word* 摘要:*摘要内容* (论文摘要应简明扼要,包括“研究的问题、过程和方法、结果”等内容。用第三人称,不必使用“本文”、“作者”等作为主语。建议采用“对……进行了研究”、“报告了……现状”、“进行了……调查”等记述方法。摘要中不能出现参考文献。)详细编写要求见“摘要编写规范”。 关键词: *关键词; 关键词; 关键词*(3~8个) 文献标识码:A 中图分类号:**** *The **** Foundation of China under Grant No.****, **** (基金中文完整名称); the **** Foundation of China under Grant No.****, **** (基金中文完整名称). [需中英文齐全]. Received 2000-00, Accepted 2000-00.

NOIP竞赛考试大纲

NOIP竞赛单程 三、竞赛形式和成绩评定 NOIP分两个等级组:普及组和提高组。每组竞赛分两轮:初试和复试。 初试形式为笔试,侧重考察学生的计算机基础知识和编程的基本能力,并对知识面的广度进行测试。初试为资格测试,获本省初试成绩在本赛区前15%的学生进入复赛。 复试形式为上机编程,着重考察学生对问题的分析理解能力,数学抽象能力,编程语言的能力和编程技巧、想象力和创造性等。各省NOIP的等第奖在复试的优胜者中产生。 比赛中使用的程序设计语言是: 初赛:PASCAL或C/C++: 复赛:PASCAL或C/C++。 每年复赛结束后,各省必须在指定时间内将本省一等奖候选人的有关情况、源程序和可执行程序报送科学委员会。经复审和评测后,由中国计算机学会报送中国科协和教育部备案。中国计算机学会对各省获NOIP二等奖和三等奖的分数线或比例提出指导性意见,各省可按照成绩确定获奖名单。 四、试题形式 每次NOIP的试题分四组:普及组初赛题A1、普及组复赛题A2、提高组初赛题B1和提高组复赛题B2。其中,A1和B1类型基本相同,A2和B2类型基本相同,但题目不完全相同,提高组难度高于普及组。 (一)初赛 初赛全部为笔试,满分100分。试题由四部分组成: 1、选择题:共20题,每题1.5分,共计30分。每题有5个备选答案,前10个题为单选题(即每题有且只有一个正确答案,选对得分),后10题为不定项选择题(即每题有1至5个正确答案,只有全部选对才得分)。普及组20个都是单选题。 2、问题求解题:共2题,每题5分,共计10分。试题给出一个叙述较为简单的问题,要求学生对问题进行分析,找到一个合适的算法,并推算出问题的解。考生给出的答案与标准答案相同,则得分;否则不得分。 3、程序阅读理解题:共4题,每题8分,共计32分。题目给出一段程序(不一定有关于程序功能的说明),考生通过阅读理解该段程序给出程序的输出。输出与标准答案一致,则得分;否则不得分。 4、程序完善题:共2题,每题14分,共计28分。题目给出一段关于程序功能的文字说明,然后给出一段程序代码,在代码中略去了若干个语句或语句的一部分并在这些位置给出空格,要求考生根据程序的功能说明和代码的上下文,填出被略去的语句。填对则得分;否则不得分。 (二)复赛 复赛的题型和考试形式与NOI类似,全部为上机编程题,但难度比NOI低。题目包括4 道题,每题100分,共计400分。每一试题包括:题目、问题描述、输入输出要求、样例描述及相关说明。测试时,测试程序为每道题提供了5-10组测试数据,考生程序每答对一组得10-20分,累计分即为该道题的得分。

noip 普及组复赛

NOIP2011 普及组复赛 1.数字反转(c/pas) 【问题描述】 给定一个整数,请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零。(参见样例2) 【输入】 输入文件名为。 输入共一行,一个整数N。 【输出】 输出文件名为。 输出共1行,一个整数,表示反转后的新数。 -1,000,000,000≤N≤1,000,000,000。 【解题】这道题非常简单,可以读字符串处理,也可以读数字来处理,只不过要注意符号问题(以及-0,但测试数据没出)。 【法一】字符串处理 Var i,l,k:integer; s:string; p:boolean; begin assign(input, ''); reset(input); assign(output, ''); rewrite(output); readln(s); l:=length(s); k:=1; if s[1]='-' then begin write('-'); k:=2; end; p:=true;; for i:=l downto k do begin if(p)and((s[i]='0')) then continue else begin write(s[i]); p:=false;; end; end; close(input); close(output); end. 【法二】数字处理 Var f:integer; n,ans:longint; begin assign(input, ''); reset(input); assign(output, ''); rewrite(output); readln(n);

NOIP普及组复赛解题报告

NOIP2015 普及组解题报告 南京师范大学附属中学树人学校CT 1.金币(coin.cpp/c/pas) 【问题描述】国王将金币作为工资,发放给忠诚的骑士。第一天,骑士收到一枚金币;之后两天(第二天和第三天),每天收到两枚金币;之后三天(第四、五、六天),每天收到三枚金币;之后四天(第七、八、九、十天),每天收到四枚金 币;这种工资发放模式会一直这样延续下去:当连续N天每天收到N枚金 币后,骑士会在之后的连续N+1天里,每天收到N+1枚金币。 请计算在前K 天里,骑士一共获得了多少金币。【输入格式】 输入文件名为coin.in 。 输入文件只有1行,包含一个正整数K,表示发放金币的天数。 【输出格式】 输出文件名为coin.out。 输出文件只有1 行,包含一个正整数,即骑士收到的金币数。 【数据说明】 对于100%的数据,1 < K < 10,000 【思路】 模拟 【时空复杂度】 O(k) ,O(1) 2 、扫雷游戏(mine.cpp/c/pas ) 【问题描述】

扫雷游戏是一款十分经典的单机小游戏。在n行m列的雷区中有一些格子含有地雷(称之为地雷格),其他格子不含地雷(称之为非地雷格)。玩家翻开一个非地雷格时,该格将会出现一个数字——提示周围格子中有多少个是地雷格。游戏的目标是在不翻出任何地雷格的条件下,找出所有的非地雷格。 现在给出n行m列的雷区中的地雷分布,要求计算出每个非地雷格周围的地雷格数。注:一个格子的周围格子包括其上、下、左、右、左上、右上、左下、右下八个方向上与之直接相邻的格子。 【输入格式】 输入文件名为mine.in 。 输入文件第一行是用一个空格隔开的两个整数n和m分别表示雷区的行数和列数。 接下来n行,每行m个字符,描述了雷区中的地雷分布情况。字符’* '表示相应格子是地雷格,字符' ?'表示相应格子是非地雷格。相邻字符之间无分隔符。【输出格式】输出文件名为mine.out 。 输出文件包含n行,每行m个字符,描述整个雷区。用’* '表示地雷格,用周围的地雷个数表示非地雷格。相邻字符之间无分隔符。 【数据说明】 对于100% 的数据,1< n W 1Q01< me 100 【思路】 模拟 【技巧】 可将数组多开一圈,省去边界条件的判断 【时空复杂度】 O(mn),O(mn)

大学四年学术竞赛汇总+推荐(欢迎补充)

大学四年学术竞赛汇总+推荐(欢迎补充) 这是学术竞赛交流会大纲,因为我接触的竞赛有限,为了能不浪费听众的20分钟,希望大家多多补充!多多指教!不甚感激! 演讲时间:20min 写在前面2min: 1、专心志。请慎重权衡是否参加某项比赛,一旦报名,就请你全身心投入。 2、享过程。请享受竞赛的过程,这既是了解自己的过程,也是与他人分享的过程。 推荐关注:校/ 院两级团委、学生会、社联、老师、相关关键社团等(注意积累人脉)校教务处https://www.360docs.net/doc/238308534.html,/ 经管院网站https://www.360docs.net/doc/238308534.html,/(大院,前期准备及时) 校科协网站https://www.360docs.net/doc/238308534.html,/xiaokexie/ 北京市教育委员会https://www.360docs.net/doc/238308534.html,/publish/edu_gjc/index.html 附:北京市教委重点学科竞赛列表 历年:英语竞赛、数学竞赛、数学建模与计算机应用竞赛、英语演讲比赛、电子设计竞赛、物理实验竞赛、化学实验竞赛、机械创新设计大赛; 2009年新增:物流设计大赛、广告艺术大赛、人文知识竞赛、模拟法庭竞赛; 2010年新增:动漫设计竞赛、创业设计竞赛、计算机应用大赛; 大一 1、英语竞赛(推荐指数:★★★★★)----个人参赛,闭卷1min https://www.360docs.net/doc/238308534.html,/ksxx/62703.htm Timetable:每年4月的第二个星期日在校内进行初赛(开学两周内在教务系统里报名,第三周以班级交费,约¥20),4月中下旬出成绩,5月的第二个星期日在校外进行决赛。 Reward:竞赛设四个奖励等级:特等奖、一等奖、二等奖、三等奖。二、三等奖通过初赛产生。特等奖和一等奖通过决赛产生。获特等奖和一等奖的学生及其指导教师由全国竞赛指导委员会颁发获奖证书,获二、三等奖的学生由全国竞赛组委会颁发获奖证书。初赛时会赠予参赛纪念卡片。 Thoughts:这个比赛性价比很高,首先很便宜(¥20),其次认可度很高(教育部主办的全国性比赛,今后评优、写简历、找工作、读研、出国都用得上),还有其他福利(获奖者可以申请学术竞赛奖学金上光荣榜、申请创新学分—信息学院是可冲抵2个学分的专业选修课等等) Memory:考过两次,至今没有通过初赛 - - || 2、数学竞赛(推荐指数:★★★★★)----个人参赛,闭卷1min https://www.360docs.net/doc/238308534.html,/ksxx/54233.htm 关于2008年北京市大学生数学竞赛(第十九届)第一次通知 2008年将举行第十九届北京市大学生数学竞赛,欢迎一、二年级和其它年级的同学参加。

NOIP2015普及组复赛解题报告

精心整理 NOIP2015普及组解题报告 南京师范大学附属中学树人学校CT 1.金币(coin.cpp/c/pas) 【问题描述】 国王将金币作为工资,发放给忠诚的骑士。第一天,骑士收到一枚金币;之后两天(第二天和第三天) 放模式会一直这样延续下去:当连续N 续N+1天里,每天收到N+1枚金币。 请计算在前K 【输入格式】 输入文件名为coin.in。 输入文件只有1 【数据说明】 对于100%的数据,1≤K≤10,000。 【思路】 模拟 【时空复杂度】 O(k),O(1)

2、扫雷游戏(mine.cpp/c/pas) 【问题描述】 扫雷游戏是一款十分经典的单机小游戏。在n行m列的雷区中有一些格子含有地雷(称之为地雷格),其他格子不含地雷(称之为非地雷格)。玩家翻开一个非地雷格时,该格将会出现一个数字——提示周围格子中有多少个是地雷格。游戏的目标是在不翻出任何地雷格的条件下,找出所有的非地雷格。 现在给出n行m 向上与之直接相邻的格子。 【输入格式】 输入文件名为mine.in。 接下来n行,每行m 雷个数表示非地雷格。相邻字符之间无分隔符。 【数据说明】 对于100%的数据,1≤n≤100,1≤m≤100。 【思路】 模拟 【技巧】

可将数组多开一圈,省去边界条件的判断。【时空复杂度】 O(mn),O(mn)

3.求和(sum.cpp/c/pas) 【问题描述】 一条狭长的纸带被均匀划分出了n个格子,格子编号从1到n。每个格子上都染了一种颜色color i(用[1,m]当中的一个整数表示),并且写了一个数字number i。 定义一种特殊的三元组:(x,y,z),其中x,y,z都代表纸带上格子的编号,这里的三元组要求满足以下两个条件: 1.x,y,z都是整数,x

NOIP2013提高组复赛Day2

CCF全国信息学奥林匹克联赛(NOIP2013)复赛 提高组 day2 (请选手务必仔细阅读本页内容) 注意事项: 1、文件名(程序名和输入输出文件名)必须使用英文小写。 2、C/C++中函数main()的返回值类型必须是int,程序正常结束时的返回值必须是0。 3、全国统一评测时采用的机器配置为:CPU AMD Athlon(tm) 64x2 Dual Core CPU 5200+, 2.71GHz,内存2G,上述时限以此配置为准。 4、只提供Linux格式附加样例文件。 5、特别提醒:评测在NOI Linux下进行。

1.积木大赛 (block.cpp/c/pas) 【题目描述】 春春幼儿园举办了一年一度的“积木大赛”。今年比赛的内容是搭建一座宽度为n的大厦,大厦可以看成由n块宽度为1的积木组成,第i块积木的最终高度需要是?i。 在搭建开始之前,没有任何积木(可以看成n块高度为0的积木)。接下来每次操作,小朋友们可以选择一段连续区间[L,R],然后将第L块到第R块之间(含第L块和第R块)所有积木的高度分别增加1。 小M是个聪明的小朋友,她很快想出了建造大厦的最佳策略,使得建造所需的操作次数最少。但她不是一个勤于动手的孩子,所以想请你帮忙实现这个策略,并求出最少的操作次数。 【输入】 输入文件为block.in 输入包含两行,第一行包含一个整数n,表示大厦的宽度。 第二行包含n个整数,第i个整数为?i。 【输出】 输出文件为block.out 仅一行,即建造所需的最少操作数。 【样例解释】 其中一种可行的最佳方案,依次选择 [1,5] [1,3] [2,3] [3,3] [5,5] 【数据范围】 对于30%的数据,有1≤n≤10; 对于70%的数据,有1≤n≤1000; 对于100%的数据,有1≤n≤100000,0≤?i≤10000。

noip普及组复赛模拟试题17(附答案)

图书馆馆长正犯愁呢,原来,有一堆的书要他整理,每本书都有一个书号(<=32767),现在他有一本书,这本书的书号为K(<=32767),现在他要找出一本书号比这本书大的书和书号比这本小的书(但都要最接近图书馆馆长已有的书号),将找到的这两本书的书号加起来,并算出加起来以后的数是否为素数 Input 第一行二个数为N,K,表示几本书以及手中书的书号(<=32767) 第二行开始有N个整数,表示这些书的书号 Output 第一行一个数,表示两本书书号加起来的和 第二行一个字符,表示和是否为素数,若是则输出"Y"否则输出"F"(引号不打出)Sample Input 6 5 6 4 5 3 1 20 Sample Output 10 F program ex1148; var n,k,i,x,s:integer; a:array[0..32767] of integer; f:boolean; begin readln(n,k); fillchar(a,sizeof(a),0); for i:=1 to n do begin read(x); a[x]:=1; end; s:=0; for i:=k+1 to 32767 do if a[i]<>0 then begin s:=s+i;break; end; for i:=k-1 downto 1 do if a[i]<>0 then begin s:=s+i;break; end; f:=true; for i:=2 to trunc(sqrt(s)) do if s mod i=0 then begin f:=false;break;end; writeln(s); if f=true then write('Y') else write('F'); end. 输入12 7 8 12 18 7 11 3 20 15 14 26 21 16 输出11 Y 输入21 10

NOIP2015初赛普及组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.00101000 B.01100111 C.01000100 D.00111000 ⒎与二进制小数0.1相等的十六进制数是( )。 A.0.8 B.0.4 C.0.2 D.0.1 ⒏所谓的“中断”是指( )。A.操 作系统随意停止一个程序的运行 B.当出现需要时,CPU暂时停止当前程序的执行转而执行处理新情况的过程 C.因停机而停止一个程序的运行 D.电脑死机 ⒐计算机病毒是( )。A.通过计算机传播的 危害人体健康的一种病毒 B.人为制造的能够侵入计算机系统并给计算机带来故障的程序或指令集合 C.一种由于计算机元器件老化而产生的对生态环境有害的物质 D.利用计算 机的海量高速运算能力而研制出来的用于疾病预防的新型病毒 ⒑FTP可以用于( )。 A.远程传输文件 B.发送电子邮件 C.浏览网页 D.网上聊天 ⒒下面哪种软件不属于即时通信软件( )。 A.QQ B.MSN C.微信 D.P2P

8.noip2014试题

全国信息学奥林匹克联赛(NOIP2014)复赛普及组 第2页共6页 1. 珠心算测验 (count.cpp/c/pas) 【问题描述】珠心算是一种通过在脑中模拟算盘变化来完成快速运算的一种计算技术。珠心算训练,既能够开发智力,又能够为日常生活带来很多便利,因而在很多学校得到普及。 某学校的珠心算老师采用一种快速考察珠心算加法能力的测验方法。他随机生成一个正整数集合,集合中的数各不相同,然后要求学生回答:其中有多少个数,恰好等于集合中另外两个(不同的)数之和?最近老师出了一些测验题,请你帮忙求出答案。 【输入】 输入文件名为count.in。输入共两行,第一行包含一个整数n,表示测试题中给出的正整数个数。 第二行有n个正整数,每两个正整数之间用一个空格隔开,表示测试题中给出的正整数。【输出】 输出文件名为count.out。输出共一行,包含一个整数,表示测验题答案。 【输入输出样例】 count.in count.out 4 1 2 3 4 2 【样例说明】 由1+2=3,1+3=4,故满足测试要求的答案为2。注意,加数和被加数必须是集合中的两个不同的数。 【数据说明】 对于100%的数据,3 ≤ n ≤ 100,测验题给出的正整数大小不超过10,000。

第3页共6页 2.比例简化 (ratio.cpp/c/pas) 【问题描述】 在社交媒体上,经常会看到针对某一个观点同意与否的民意调查以及结果。例如,对某一观点表示支持的有1498人,反对的有902人,那么赞同与反对的比例可以简单的记为1498:902。 不过,如果把调查结果就以这种方式呈现出来,大多数人肯定不会满意。因为这个比例的数值太大,难以一眼看出它们的关系。对于上面这个例子,如果把比例记为5:3,虽然与真实结果有一定的误差,但依然能够较为准确地反映调查结果,同时也显得比较直观。 现给出支持人数A,反对人数B,以及一个上限L,请你将A比B化简为A’比B’,要求在A’和B’均不大于L且A’和B’互质(两个整数的最大公约数是1)的前提下,A’/B’≥ A/B 且A’/B’ - A/B的值尽可能小。 【输入】 输入文件名为ratio.in。输入共一行,包含三个整数A,B,L,每两个整数之间用一个空格隔开,分别表示支持人数、反对人数以及上限。 【输出】输出文件名为ratio.out。 输出共一行,包含两个整数A’,B’,中间用一个空格隔开,表示化简后的比例。 【输入输出样例】 ratio.in ratio.out 1498 902 10 5 3 【数据说明】 对于100%的数据,1 ≤ A ≤ 1,000,000,1 ≤ B ≤ 1,000,000,1 ≤ L ≤ 100, A/B ≤ L。

关于“探索计算机发展历程”的研究报告

探索计算机发展历程 指导教师: 研究小组成员:茂名市第一中学高一(16)班廖拾漫谢煜明 ㈠研究背景及目的 今天,随着计算机技术的高速发展,电脑和网络正在以惊人的速度融入人类社会的各个角落。计算机网络时代到来,宣告了一场新的科技革命的到来。而相关产业的进步与发展,如生物技术和电子技术等,都与计算机的发展息息相关。一些新材料、新能源的开发和利用技术也都将在这一过程中获得巨大发展。为了了解计算机技术的发展使现代社会产生巨大变革的原因,以及计算机技术发展的未来,2010年2月1日,我们成立了一个研究小组,对计算机的基本分类、雏形、计算机发展史上的重要人物、计算机发展各个阶段和未来发展趋势进行了探索。 ㈡研究过程及方法。 我们成立的研究小组利用一个星期的时间,查阅了《电脑爱好者》、《电脑报》、《电脑应用文摘》等文献资料及通过互联网,收集到计算机发展的相关资料,了解计算机发展的历程。 ㈢研究成果 1.计算机的基本分类 (1)按照性能指标分类 ①巨型机:高速度、大容量 ②大型机:速度快、应用于军事技术科研领域 ③小型机:结构简单、造价低、性能价格比突出 ④微型机:体积小、重量轻、价格低

(2)按照用途分类 ①专用机:针对性强、特定服务、专门设计 ②通用机:科学计算、数据处理、过程控制解决各类问题 (3)按照原理分类 ①数字机:速度快、精度高、自动化、通用性强 ②模拟机:用模拟量作为运算量,速度快、精度差 ③混合机:集中前两者优点、避免其缺点,处于发展阶段 2.早期计算机 1642年,法国人布莱士?帕斯卡(1623-1662)发明了自动进位加法器,称为Pascalene。1694年,德国数学家Gottfried Wilhemvon Leibniz(1646-1716)改进了Pascaline,使之可以计算乘法。后来,法国人Charles Xavier Thomas de Colmar发明了可以进行四则运算的计算器。这可以说是现代计算机的雏形。 3.现代计算机发展主要历程 1)计算机发展史上的重要人物 现代计算机的真正起源来自英国数学教授Charles Babbage。Babbage发现通常的计算设备中有许多错误,在剑桥学习时,他认为可以利用蒸汽机进行运算。起先他设计差分机用于计算导航表,后来,他发现差分机只是专门用途的机器,于是放弃了原来的研究,开始设计包含现代计算机基本组成部分的分析机——Analytical Engine。 Babbage的蒸汽动力计算机虽然最终没有完成,以今天的标准看也是非常原始的,然而,它勾画出现代通用计算机的基本功能部分,在概念上是一个突破。 在接下来的若干年中,许多工程师在另一些方面取得了重要的进

noip普及组复赛模拟试题8(答案)

Description 给定整数n(32位以内),判断它是否为2的方幂。是就输出'yes',否则输出'no'。 Input 一个整数n。 Output 一个字符串 Sample Input 4 Sample Output yes Hint n > 0 && ( ( n & ( n - 1 ) ) == 0 貌似是数学问题,套用了提示 program ex1560; var n:longint; begin readln(n); if (n>0) and (n and (n-1)=0) then write('yes') else write('no'); end. 输入 127 输出 NO 输入 262144 输出 YES 输入 68719476736 输出 YES 问题描述: 计算机软件版本通常被用来区分某种软件在不同时间的发布。大部分软件版本号都是用“.”分隔的非负数的序列。对两个不同的版本A = a1.a2.a3…an和B = b1.b2.b3…bm,如果下面两个条件之一成立,我们认为版本A要比版本B新: 1.对某个i,我们有:对所有j < i, ai > bi 和aj = bj; 2.n比m大,而且对所有i < m, ai = bi。 (ai和bi都不超过LONGINT) 在这个问题里,你要对给定的一组版本号,按照上面的定义从旧到新排序。 输入文件(VERSIONS.IN): 输入文件第一行是一个整数N(N<=20),表示要排序的版本数。接下来的N行每行一个版本号。每个版本号是长度不超过50的字符串。 输出文件(VERSIONS.OUT): 将排好序的结果以每行一个版本号输出。 输入输出样例: VERSIONS.IN 4 3.0.5 1 2.4 2.4.6 VERSIONS.OUT 1

相关文档
最新文档