2015年第30届宁波市信息学复赛小学组复赛题目
- 格式:doc
- 大小:34.50 KB
- 文档页数:5
宁波市江北区中小学生计算机程序设计竞赛复赛试题题目一览注意:一、关于竞赛中编程语言使用的规定参照中国计算机学会公布的《关于NOI系列赛编程语言使用限制的规定》。
二、评测环境为windows。
1.整点报时(time.pas/c/cpp)【题目描述】现在智能手机中都有闹钟程序,经过设置,它可以实现整点报时,发出若干个”di”的声音,请用程序来模拟这一现象。
【输入】一个整数n【输出】只有一行,用n个”di”来表示,之间有一个空格。
【样例输入】3【样例输出】di di di【数据规模】对于100%的数据,1<=n<=24。
2.求和问题(sum.pas/c/cpp)【题目描述】给定1到n共n个数,你需要找出连续的几个数使得其和为m,显然这样的方案有很多,请将每种方案都输出,输出方法请参考样例。
【输入】第一行两个整数n和m。
【输出】输出有多行,每行表示一种合法的方案,采用闭区间的方式给出方案([a,b]表示a到b 这几个连续的整数),当有多种方案时按照a由小到大输出。
【样例输入】20 15【样例输出】[1,5][4,6][7,8][15,15]【样例说明】1+2+3+4+5 = 154+5+6 = 157+8 = 1515 = 15【数据规模】对于30%的数据,n,m<=100。
对于60%的数据,n,m<=1000000。
对于100%的数据,n,m<=10^12。
3.吃水果问题(eat.pas/c/cpp)【题目描述】老李非常关注小李的饮食问题,给他制定了一长串吃水果清单。
但是小李非常淘气,如果相邻两天吃的水果一样的话,他将会变得非常暴躁,精通编程的你能否帮助老李同志,判断是否存可以将老李的方案修改成让小李不暴躁。
【输入】第一行,一个整数case,表示测试组数对于每组测试数据:第一行,一个整数n,表示吃水果天数。
第二行,共n个空格隔开的数字a i,表示每天吃的水果编号。
【输出】输出共case行,对于每一组测试数据如果存在方案输出Y否则输出N。
小学生信息学奥林匹克复赛模拟试题一说明:1.严格按题目要求的输入、输出格式读写数据,否则不得分。
2.请在D盘根目录下建立以自己考号命名的文件夹,并把需要提交的文件(即每一题的源文件和编译后的可执行文件)保存在此文件夹内。
3.竞赛结束后速离开考场,不要关机。
第一题:开灯游戏(xj1.pas)【问题描述】有n盏灯,放在一排,从1到n依次顺序编号。
有m个人也从1到m依次顺序编号。
第1个人(1号)将灯全部关闭;第2个人(2号)将凡是2的倍数的灯打开;第3个人(3号)将凡是3的倍数的灯作相反处理(该灯如是打开的,则将它关闭;如是关闭的,则将它打开)。
以后的人都和3号一样,将凡是自己编号倍数的灯作相反处理。
试计算当第m个人操作后,哪几盏灯是亮的?【输入格式】从键盘输入n,m的值。
(n,m均为小于32768的自然数,且n>=m)【输出格式】在同一行输出亮着的灯的编号。
(没有灯亮则输出“NO”)【样例输入】5 3【样例输出】2 3 4第二题:数列求和(xj2.pas)【问题描述】简单数列是有规律排列的一些数,例如1,2,3,4,5,6,7就是这样的数列,这种数列中的后一个数总是前一个数多或少一个相同的数,其实只要知道这种数列中的前三个数和最后一个数就可以写出数列中的所有的数。
你的任务是根据给出的数列求出这个数列所有数的和。
每个数列的前三个数和最后一个数从键盘输入。
【输入格式】输入只有一行,分别为数列的前三个数和最后一个数。
所有输入均为不大于32767的自然数。
【输出格式】以等式的形式输出这个数列的和。
【样例输入1】项数=(末项-首项) div 公差+11 2 3 7【样例输出2】1+2+3+…+7=28【样例输入2】-3 -1 1 5【样例输出2】(-3)+(-1)+1+…+5=5(说明:算式中只要求输出前三个数和最后一个数,中间的数用…代表,等式左边的负数要加上小括号)第三题:算式求解(xj3.pas)【问题描述】输入一个算式,输出算式的结果。
2015年宁波市第30届中小学生计算机程序设计竞赛初中组初赛试题(说明:答案请写在答题卷上。
考试时间120分钟,满分100分)一、选择题(每题有且仅有一个正确答案,选对得1.5分,选错. 不选或多选均不得分)1、关于硬盘下面的说法哪个是不正确的:A)最新的商用固态硬盘(SSD),读写速度很快,均可超过500MB/s。
B)传统的机械硬盘(HDD),价格便宜,存储容量大,但是读写速度较慢。
C)混合硬盘(HHD)是机械硬盘和固态硬盘结合。
D)硬盘的读写速度会越来越快,甚至超过CPU运算的速度,不再需要内存、缓存等。
2、关于计算机内存下面的说法哪个是正确的:A)计算机内存严格说来包括主存(memory)、高速缓存(cache)和寄存器(register)三个部分。
B)1MB内存通常是指1024*1024*1024字节大小的内存。
C)随机存储器(RAM)的意思是它可以随时读写,而且速度很快,通常作为操作系统或其他正在运行中的程序的临时数据存储媒介。
D)一般内存中的数据即使在断电的情况下也能保留数小时以上。
3、关于微型计算机主板下面说法哪个是正确的:A)现在微机主板的集成度非常高,中央处理器、显卡、声卡等都可以集成在主板上。
B)BIOS芯片,用于控制基本输入输出,就被集成在主板上。
C)若要提高显示效果,安装的独立显卡,其数据处理和传输必须和主板相互独立。
D)一般主板上有多个内存插槽,可以插入多条内存,但是只能接一块硬盘。
4、关于CPU下面哪个说法是不正确的:A)CPU全称为中央处理器(或中央处理单元)。
B)CPU可以直接运行Pascal语言。
C)CPU的工艺水平越来越高,可以将集成电路中电子元器件体积做得更小,单位面积内容纳更多的电子元器件。
D)CPU工艺改进中著名的摩尔定律,最早是由Intel公司创始人之一戈登·摩尔提出的。
5、关于ASCII码和汉字编码,下面哪个说法是正确的:A)ASCII码就是键盘上所有键的唯一编码。
noip2015普及组复赛试题题目一:矩阵运算给定一个n阶方阵A(1 ≤ n ≤ 100),求A的所有指定行指定列删除后得到的新矩阵的行列式。
输入格式:输入第一行包含一个整数n,表示方阵的阶数。
接下来n行,每行包含n个整数,表示方阵A的元素。
接下来一行包含两个整数,表示要删除的行和列的序号。
输出格式:输出一个整数,表示新矩阵的行列式的值。
题目要求:首先,我们需要编写一个能够计算矩阵行列式的函数,然后根据题意进行修改,使其能够处理删除指定行列后的新矩阵,并返回新矩阵的行列式的值。
算法思路:我们可以使用拉普拉斯展开定理来计算矩阵行列式的值。
首先定义一个变量result,初始化为0。
然后遍历矩阵的第一行元素,对于第i 个元素,根据其正负性,计算其余元素组成的(n-1)阶子矩阵的行列式的值,并递归调用自身。
最后将每个元素计算得到的行列式值乘以其对应的元素,累加到result上。
然后根据题目要求,在计算每个元素对应的子矩阵时,判断是否需要删除指定的行列。
如果需要删除,则直接跳过该行列,否则继续计算。
代码如下:```pythondef determinant(matrix):n = len(matrix)if n == 1:return matrix[0][0]result = 0for i in range(n):if n > 2:sub_matrix = [row[:i] + row[i+1:] for row in matrix[1:]]else:sub_matrix = matrix[1:]det = determinant(sub_matrix)result += (-1) ** i * matrix[0][i] * detreturn resultn = int(input())matrix = []for _ in range(n):row = list(map(int, input().split()))matrix.append(row)row, col = map(int, input().split())matrix = [matrix[i][:col] + matrix[i][col+1:] for i in range(row)] # 删除指定列matrix = matrix[:row] + matrix[row+1:] # 删除指定行result = determinant(matrix)print(result)```题目二:水果分配小明和他的朋友们买了n个水果,其中有x个苹果和y个香蕉。
2015年宁波市第30届中小学生计算机程序设计竞赛一、选择题(每题有且仅有一个正确答案,选对得1.5分,选错、不选或多选均不得分)1. 下列不能描述鼠标性能的指标是()。
(A)刷新率(B)CPI (C)DPI (D)UPI2. 下列关于4G网络的说法中错误的是()。
(A)TD-LTE是其中一种制式(B)FDD-LTE是其中一种制式(C)4G是集3G与WLAN与一体(D)理论上其带宽速度可以达到1000MB每秒3. 下列关于CES2015中Intel公司新推出的CPU产品的说法中错误的是()。
(A)是14nm工艺芯片(B)代号为Broadwell(C)比Skylake架构更为先进(D)将首先用于笔记本和移动领域4. 15以内的正整数(包含15)互质的数共有多少对?(a,b)和(b,a)算同一对()。
(A)71 (B)72 (C)73 (D)745. 给定序列a=(5,3,1,2,4),每次可以交换序列中的两个数,代价为这两个数的和。
那么将a排序的最小代价是多少()。
(A)18 (B)19 (C)17 (D)206. 一棵有根树中,每个非叶节点都有三个儿子,所有叶结点深度相同。
若这棵树中存在一条最长的路径有9个结点,则这棵树共有多少结点()。
(A)(3^5 - 1)/2 (B)3^5 (C)(3^6 - 1)/2 (D)3^67. 十进制数174转化成二进制是()。
(A)10011110 (B)10010011 (C)10110000 (D)101011108. 已知A=True,B=False,C=True,下列逻辑表达式中值为真的是(A)(A∨C)∧B (B)(A∧B)∨(B∧C) (C)(A∨C)∨(A∧(B∨¬C)) (D)(¬(A∧C))∨(B∧C)9. 以下哪个顺序描述了一个编译器(A)语法分析器,语义分析器,词法分析器,中间代码生成器,机器无关代码优化器,代码生成器,机器有关代码优化器(B)语法分析器,语义分析器,词法分析器,中间代码生成器,机器有关代码优化器,代码生成器,机器无关代码优化器(C)词法分析器,语法分析器,语义分析器,中间代码生成器,机器无关代码优化器,代码生成器,机器有关代码优化器(D)词法分析器,语法分析器,语义分析器,中间代码生成器,机器有关代码优化器,代码生成器,机器无关代码优化器10. 考虑所有只由0、1、2组成的字符串。
鄞州区小学生信息学奥林匹克竞赛试题(小学组PASCAL语言 2.5小时完成)准考证号姓名学校得分一.选择一个正确答案代码(A/B/C/D),填入每题的括号内(每题1分,每题只有一个正确答案,多选或错选都无分。
共30分)1.标准PASCAL程序说明部分的正确顺序是( )。
A.label-->const-->var-->type B.var-->const-->label-->typeC.label-->const-->type-->var D.const-->var-->type-->label2.下列( )是合法的标识符。
A.A23456 B.X*Y C.BEGIN D.H(X)3.下列( )不是保留字。
A.div B.program C. new D.var4.若a=true,b=false,x=7,y=12,m=3,n=35,求表达式a and not(m>n) and (x<y-m) or(a or b)的值()。
A.true B.false C.0 D.15.下列常量定义中正确的是()。
A.const d=40 or d=100; B.const s = 0.5;C.const s : 2.15; D.const s: = (2>5);6.下列函数值是整型的是()。
A.CHR(23) B.ORD(FALSE) C.SUCC(FALSE) D.ODD(98)7.设x是实型变量,下列表达式能将x四舍五入后保留两位小数的是()。
A.round(x) B.round(x)/100C.round(x*100)/100 D.round(x*10)/108. 表达式 35 DIV 3 MOD 4 的值是()。
A.0 B.2 C.3 D.69.把整数5转换为字符'5'的表达式是()。
A.chr(5)-ord('0') B.chr(5+ord('0'))C.chr(5)-ord('0') D.chr(5+ord(0))10. 下列程序段运行后,变量value的值为( )。
宁波市江北区中小学生计算机程序设计竞赛复赛试题题目一览注意:一、关于竞赛中编程语言使用的规定参照中国计算机学会公布的《关于NOI系列赛编程语言使用限制的规定》。
二、评测环境为windows。
1.整点报时(time.pas/c/cpp)【题目描述】现在智能手机中都有闹钟程序,经过设置,它可以实现整点报时,发出若干个”di”的声音,请用程序来模拟这一现象。
【输入】一个整数n【输出】只有一行,用n个”di”来表示,之间有一个空格。
【样例输入】3【样例输出】di di di【数据规模】对于100%的数据,1<=n<=24。
2.求和问题(sum.pas/c/cpp)【题目描述】给定1到n共n个数,你需要找出连续的几个数使得其和为m,显然这样的方案有很多,请将每种方案都输出,输出方法请参考样例。
【输入】第一行两个整数n和m。
【输出】输出有多行,每行表示一种合法的方案,采用闭区间的方式给出方案([a,b]表示a到b 这几个连续的整数),当有多种方案时按照a由小到大输出。
【样例输入】20 15【样例输出】[1,5][4,6][7,8][15,15]【样例说明】1+2+3+4+5 = 154+5+6 = 157+8 = 1515 = 15【数据规模】对于30%的数据,n,m<=100。
对于60%的数据,n,m<=1000000。
对于100%的数据,n,m<=10^12。
3.吃水果问题(eat.pas/c/cpp)【题目描述】老李非常关注小李的饮食问题,给他制定了一长串吃水果清单。
但是小李非常淘气,如果相邻两天吃的水果一样的话,他将会变得非常暴躁,精通编程的你能否帮助老李同志,判断是否存可以将老李的方案修改成让小李不暴躁。
【输入】第一行,一个整数case,表示测试组数对于每组测试数据:第一行,一个整数n,表示吃水果天数。
第二行,共n个空格隔开的数字a i,表示每天吃的水果编号。
【输出】输出共case行,对于每一组测试数据如果存在方案输出Y否则输出N。
2015年南海区青少年信息学奥林匹克竞赛试题(小学乙组)注意事项:1.本次竞赛将使用评测系统进行自动评测,以源程序的测试结果为准。
2.要利用文件严格按题目要求的格式(参考输入输出样例)进行输入输出,否则将被判为错误2、如果小米是女生,那么成年后身高= (父亲身高+母亲身高-13厘米)div 2 【输入格式】一行,三个整数:father、mother、me。
其中father是父亲身高,mother是母亲身高,me如果是1,则代表小米是男生;me如果是0,则代表小米是女生。
【输出格式】一个整数,表示小米同学成年后的身高。
【数据规模】140 ≤father ≤200,140 ≤mother ≤200。
me=1或者me=0。
【温馨提示】题目中的div是表示整除, A div B 表示的意义是A除以B的商,忽略余数。
例如:10 div 2 = 5,因为10除以2的商是5。
9 div 2 = 4,因为9除以2的商是4。
因此,本题只需要用到整型,不要用实型。
第三题 小矮人(snow)【题目描述】最初出现“七个小矮人”的是德国著名童话集《格林童话》之中的《白雪公主》。
原文讲述了一个可爱美丽的公主因为被恶毒后母嫉妒其美貌而被迫逃到森林,在缘分安排下偶遇善良的七个小矮人。
最后在他们帮助下,破解了后母的诅咒,找到了王子1恰第一行,两个整数:A,N。
第二行,N个整数,空格分开,第i个整数就是第i块蛋糕的重量Wi。
【输出格式】一个整数,变形虫的最终体重。
【数据规模】1 ≤A ≤1000000000,1 ≤N ≤200,1 ≤Wi ≤1000000000。
输入样例输出样例样例解释1 52 13 1 24 变形虫首先会吃掉第2块蛋糕,体重变成2。
然后变形虫再吃掉第5块蛋糕,体重变成4。
10 71 4 9 16 25 36 49 10 变形虫吃不了任何蛋糕,体重不变。
第六题 小球(xiaoqiu)【题目描述】有R个红色盒子和B个蓝色盒子,还有R个红色小球和B个蓝色小球。
宁波市第22届中小学生计算机程序设计竞赛复赛试题(小学组)宁波市第 25 届中小学生计算机程序设计竞赛复赛试题第 1 页共 5 页宁波市第22届中小学生计算机程序设计竞赛复赛试题题目一览试题名称英文代号程序名最小数 min /c/cpp 等式 equal /c/cpp 128 MB 1秒旅行 travel /c/cpp 128 MB 1秒输入文件名输出文件名内存限制时限 128 MB 1秒关于竞赛中不同语言使用限制的说明一.关于使用Pascal语言与编译结果的说明1.对于Pascal语言的程序,当使用IDE和fpc编译结果不一致时,以fpc的编译结果为准。
2.允许使用数学库(uses math子句),以及ansistring。
但不允许使用编译开关,也不支持与优化相关的选项。
3.本次比赛允许使用64位整数类型:int64或qword。
1.最小数(min)题目描述给定一个正整数n,请去掉其中的m个数字,使其剩下的数字按原先从左到右的相对次序组成一个新数,但该新数的值必须尽可能的小。
【输入】输入文件中只有一行,共2个整数,分别是n和m的值,中间用一个空格分隔。
【输出】输出文件中只有一行,该行只有一个整数,它是从n中去掉m个数字后所能得到的最小新数。
样例输入1宁波市计算机学会,20XX宁波市第 25 届中小学生计算机程序设计竞赛复赛试题第 2 页共 5 页456547 1 样例输出145547样例输入2456547 3样例输出2447样例输入31003 1样例输出33【数据限制】本题共有10组测试数据,每组10分,共100分。
50%的数据,10≤n≤*10^9,另外50%的数据n不超过240位。
所有的数据m的值都小于n的位数。
宁波市计算机学会,20XX宁波市第 25 届中小学生计算机程序设计竞赛复赛试题第 3 页共 5 页2. 等式(equal)题目描述有一个未完成的等式:1 2 3 4 5 6 7 8 9=N当给出整数N的具体值后,请你在2,3,4,5,6,7,8,9这8个数字的每一个前面,或插入一个运算符号“+”号,或插入一个运算符号“-”号,或不插入任何运算符号,使等式成立,并统计出能使等式成立的算式总数,若无解,则输出0。
1.幸运数字(lucky.cpp/pas/c)【题目描述】小李非常喜欢数字4和7,看到一个数字他就想快速计算出因子里面分别有几个4和7,但是智商捉急的他总是要算很久,喜欢编程的你能够帮助他吗?【输入】第一行一个整数n,表示给定的数字。
【输出】两个用空格隔开的数字,分别表示给定数字的因子中4和7的个数。
【样例输入】112【样例输出】2 1【样例说明】112=4*4*7【数据规模】50%的数据,3<=n<=230100%的数据,3<=n<=260分析:这里是分解质因数的变形,先考虑数据规模,有多大?integer是2个字节,也就是16个二进制位,除去符号位,即-1,同理,longint是4个字节,-1,int64是8个字节,-1。
明显必须采用int64。
然后考虑分解质因数的时间复杂度,包含了最多的4,也就30次就能分解了,所以不会超时,至于7的个数,肯定是小于4的,放心用分解质因数。
这题难度可以升级,如果在指定范围内输出每个数字因子里有几个4和7,就要考虑时间复杂度!代码:varx,i:integer;a:array[4..7] of integer;n:int64;beginreadln(n);x:=4;repeatif n mod x = 0 thenbegininc(a[x]);n := n div x;endelse inc(x);until x > 7;writeln(a[4],' ',a[7]);end.2.英雄卡(card.cpp/pas/c)【题目描述】小李非常迷恋收集各种干脆面里面的英雄卡,为此他曾经连续一个月都只吃干脆面这一种零食,但是有些稀有英雄卡真的是太难收集到了。
后来某商场搞了一次英雄卡兑换活动,只要你有三张编号连续的英雄卡,你就可以换任意编号的英雄卡。
小李想知道他最多可以换到几张英雄卡(新换来的英雄卡不可以再次兑换)。
【输入】第一行,共一个整数n,表示小李拥有的英雄卡数。
宁波市第20届小学生计算机程序设计初赛试题(说明:考试时间90分钟,满分120分)一、选择题(每小题2分,共40分)下列各题A、B、C、D四个选项中,只有一个选项是正确的,请将正确选项写在答题卷相应位置上,答在试卷上不得分。
1、一个完整的计算机系统应包括____。
A 主机,键盘和显示器B 计算机及其外部设备C 系统硬件和系统软件D 硬件系统和软件系统2、十进制数2005转换为二进制,结果是()。
A、B、C、D、3、下列电子邮件地址,正确的是( )。
A B cai@C D4、彩色显示器所显示的五彩斑斓的色彩,是由红色,蓝色和()色混合而成的A、紫色B、白色C、黑色D、绿色E、橙色5、目前世界上计算机的工作原理是________,它来源于________提出的________原理。
A、存储程序和程序控制、冯。
诺依曼、程序设计B、存储程序控制、冯。
诺依曼、存储程序和程序控制C、存储程序、Taring、程序控制D、存储程序控制、Turing、程序设计6、关于计算机病毒,下列说法正确的是()A、病毒是由软盘表面粘有灰尘造成的B、病毒常隐藏在数据文件或系统中,具有隐蔽性和潜伏性C、大部分病毒不具有传染性和破坏性D、病毒会对计算机造成轻或重的损害,但制造病毒的人并不构成犯罪7、计算机网络的目标是实现()。
A、数据处理B、文献检索C、资源共享和信息传输D、信息传输8、目前比较流行的网络编程语言是( )A、JavaB、FoxPrlC、PascalD、C9、根据域名代码规定,域名为)。
A、教育机构B、军事部门C、商业组织D、非营利组织10、计算机的硬件系统包括()。
A、运算器、控制器、存储器、输入设备、输出设备B、控制器、运算器、输入和输出设备C、中央处理器、输入和输出设备D、主机和键盘、显示器11、算法是指()A、为解决问题而编制的计算机程序B、为解决问题而采取的方法与步骤C、为解决问题需要而采用的计算机编程语言D、为解决问题而采用的计算方法12、Internet上访问Web信息时用的工具是浏览器。
2015年海淀区中小学生信息学奥林匹克竞赛小学组竞赛试题(每题100分,共700分)姓名________年级_________学校____________准考号________成绩_____说明:(1)请同学们运行QBASIC语言环境(BC7.0版本)或C/C++语言环境;(2)以各自题目要求的名称,例如:tongji.bas/或tongji.c/或tongji.cpp,将源文件存盘;(3)输入输出均采用文件读写,将最后写好的源文件,存入D:\TEST文件夹中。
如:D:\TESTtongji.bastuxing.basjisuan.baszfc.bas………一、成绩统计(题目名称:tongji.bas/ tongji.c/ tongji.cpp)(100分)【题目描述】六年级一班举办数学小竞赛。
考试结束后,班主任老师让张红同学用计算机编程的方法,来统计一下班里N名同学在这次数学竞赛中,成绩在以下各类别的人数。
要求:分数为整数,用变量F表示,以百分制作为记分标准。
成绩在(90≤F≤100)分数之间,用“you”来标识; 成绩在(80≤F≤89)分数之间,用“liang”来标识; 成绩在(60≤F≤79)分数之间,用“zhong”来标识;成绩在60分以下,则用“cha”来标识。
【输入文件】文件名:tongji.in文件中共有两行:第一行:包含一个整数N,表示学生的数量(其中1≤N≤30);第二行:是N个用1个空格隔开的学生的分数(分数为整数)。
【输出文件】文件名:tongji.out文件中共有四行:每行包括两项,第一项是标识符,第二项是统计该类别人数的数量,两项之间用1个空格隔开。
【要求】按高分到低分的顺序来统计,每一行输出数据都从第一列开始。
【样例输入】tongji.in的内容为:1092 78 80 95 100 87 64 56 52 98 (备注:数据之间有1个空格)【样例输出】tongji.out的内容为:You 4(备注:每行数据之间有1个空格)Liang 2Zhong 2Cha 2二、打印图形(题目名称: tuxing.bas/tuxing.c/tuxing.cpp) (100分)【题目描述】由键盘输入任意一个自然数N,输出如下图:形如“沙漏”的由大写字母组成的图形。
宁波市第30届中⼩学⽣程序设计竞赛初中组复赛试题宁波市第30届中⼩学⽣程序设计竞赛复赛试题(初中组)⽐赛时间:2015年3⽉28⽇上午9:00-12:00(请选⼿务必仔细阅读本页内容)四.运⾏内存限制五.注意事项1、⽂件名(程序名和输⼊输出⽂件名)必须使⽤⼩写。
2、C/C++中函数main()的返回值类型必须是int,程序正常结束时的返回值必须是0。
(div.pas/c/cpp)【问题描述】⽺年到了,村长开始教⼩⽺学习Pascal语⾔,刚开始学习四则运算。
村长在⽩板上写下两个整数16和3,问⼩⽺们,有16只⽺,平均分到3个⽺村,每个⽺村分到的数量必须相同,这个分配的数量最⼤是多少?⼩⽺们很快就得到了答案,每个⽺村分到5只,有1只⽺就只能落单了。
村长在⽩板上写下5。
没错,这个就是Div(整除)的⽤法!为了检验⼩⽺们是否掌握了整除运算,村长要求⼩⽺们轮流从⽩板上任意选取两个不同的数,由⼤数整除⼩数,若所得结果没有出现在⽩板上,就将该值写在⽩板上。
直到⼩⽺们再也找不到没出现过的整数。
虽然这样上课很锻炼⼩⽺们的运算能⼒,但是课堂时间有限。
为了控制课堂时间,村长想要知道,根据当前⽩板上的数字,最终⽩板上会出现⼏个数字?现在请你帮他编写⼀个程序快速计算⼀下吧!【输⼊】第⼀⾏⼀个整数N,表⽰当前⽩板上出现的整数个数。
第⼆⾏N个整数,中间⽤空格分隔,表⽰当前在⽩板上的数字,保证每个数字都不相同。
【输出】输出⼀个整数,表⽰最终⽩板上数字的个数。
【样例1解释】选择16和3,写下5;选择5和3,写下1;共16,3,5,1,四个整数。
【样例2解释】选择17和2,写下8;再选择8和2,写下4;共17,2,8,4,1,五个整数。
【数据范围】50%的数据,N<=50;100%的数据,N<=100,1<=ai<=100。
(eat.pas/c/cpp)【问题描述】⼩⽺们上完课后,纷纷到草场上吃草。
⽽⽺村现在正在进⾏特⾊⽰范⽺村检查,领导们想看看⽺村的草场。
宁波市第30届中小学生计算机程序设计竞赛
复赛试题(小学组)
比赛时间:2015年3月28日下午1:30—4:00
题目一览
注意:
一、关于竞赛中编程语言使用的规定参照中国计算机学会公布的《关于NOI系列赛编程语言使用限制的规定》。
二、评测环境为windows。
1.幸运数字
(lucky.cpp/pas/c)
【题目描述】
小李非常喜欢数字4和7,看到一个数字他就想快速计算出因子里面分别有几个4和7,但是智商捉急的他总是要算很久,喜欢编程的你能够帮助他吗?
【输入】
第一行一个整数n,表示给定的数字。
【输出】
两个用空格隔开的数字,分别表示给定数字的因子中4和7的个数。
【样例输入】
112
【样例输出】
2 1
【样例说明】
112=4*4*7
【数据规模】
50%的数据,3<=n<=230
100%的数据,3<=n<=260
2.英雄卡
(card.cpp/pas/c)
【题目描述】
小李非常迷恋收集各种干脆面里面的英雄卡,为此他曾经连续一个月都只吃干脆面这一种零食,但是有些稀有英雄卡真的是太难收集到了。
后来某商场搞了一次英雄卡兑换活动,只要你有三张编号连续的英雄卡,你就可以换任意编号的英雄卡。
小李想知道他最多可以换到几张英雄卡(新换来的英雄卡不可以再次兑换)。
【输入】
第一行,共一个整数n,表示小李拥有的英雄卡数。
第二行,共n个空格隔开的数字a i,表示英雄卡的编号。
【输出】
输出仅有一行,共1个整数,表示小李最多可以换到的英雄卡。
【样例输入】
6
3 1 2
4 4 5
【样例输出】
1
【样例说明】
1 2 3三张编号连续,可以换一张,换完后剩下4 4 5,不符合兑换规则,无法继续兑换。
【数据规模】
70%数据,1<=n<=1000
100%数据,1<=n<=10000,1<=a i<=100000
3.最强阵容
(battle.cpp/pas/c)
【题目描述】
拿着新换来的英雄卡,小李满心欢喜的准备和同学们PK一下。
他们的游戏规则非常简单,双方把自己的牌绕成一圈,然后指定一个起点,从该张牌开始顺时针方向往后取,谁取出的字符串字典序更小(从左到右开始比较,碰到第一个不一样的字符进行比较,比较规则为a<b<…<z)谁将获得胜利。
具体规则可参考样例。
虽然现在小李的牌已经很好了,但是你能不能帮他快速算出起始位置,使得他能够派出最强阵容。
【输入】
第一行n,表示共有n张牌。
第二行共n个用一个空格隔开的小写字母,表示给定的一圈牌起始序列。
【输出】
仅一个整数,能获得最小字典序字符串的起点位置。
如果有多个位置开始的字符串一样,则输出最小的那个位置,且第一个位置从1开始。
【样例输入】
4
b c a b
【样例输出】
3
【样例说明】
四个位置取出的字符串分别为bcab,cabb,abbc,bbca,显然最小位置是3。
【数据规模】
30%的数据,1<=n<=10
60%的数据,1<=n<=1000
100%的数据,1<=n<=30000
4.最强素数
(prime.cpp/pas/c)
【题目描述】
小李在你帮助之下轻松战胜了他的同学们,于是满怀恶意的同学出了一个题目来为难小李,作为小李神一样的队友,你又要出力了。
素数41能写成连续6个素数之和:41=2+3+5+7+11+13。
现在要求n以内的素数中,能表示为最多连续素数之和的那个数,如果有多个答案,请输出最大的那个素数。
【输入】
仅一行,一个整数n。
【输出】
输出就一个整数,为所求的能表示为最多连续素数和的那个素数。
【样例输入】
100
【样例输出】
41
【样例说明】
41=2+3+5+7+11+13
【数据规模】
30%的数据,1<=n<=1000
60%的数据,1<=n<=10000
80%的数据,1<=n<=100000
100%的数据,1<=n<=1000000。