【第十四届蓝桥杯省赛题目】

选择题:

1.设只含根结点的二叉树高度为1,共有62个结点的完全二叉树的高度为?

A.4 B.5 C.6 D.7

解析:高度为K的满二叉树 节点数为 2k-1 ,如果K=6 最多有63个节点 故答案为6 选C

2.C++中,bool类型的变量占用字节字数为?

A.1 B.2 C.3 D.4

参考答案:A

3.该程序的输出为?

A.127 B.97 C.63 D.126

4、以下关于数组的说法中,不正确的一项是?

  1. 数组中所有元素必须都相同
  2. 数组中各元素在内存中是顺序存放的
  3. 数组最后一个元素的索引是数组的长度
  4. 数组名的第一个字符可以是下划线

参考答案:C 最后一个元素的下标是长度减1

5、以下关于结构体的说法中,正确的一项是?

  1. 结构体中只能包含成员变量,不能包含成员函数
  2. 结构体不能从另一个结构体继承
  3. 结构体里面可以包含静态成员变量
  4. 结构体中里面不能包含函数

解析: struct只是类型声明,没有内存空间的分配,而static变量是需要分配内存的。 C错

答案:CDADC

编程题:

1、时间限制: 1000MS

内存限制: 65536KB

题目描述:

编程实现:特殊运算符

假定有一个运算符">>>",它的功能如下所示:

>>>257 = 25

>>>182 = 18

>>>933 = 93

给定一个正整数N(100<N<1000),请计算 N -- (>>>N)的结果。

例如:N=257时,

257 -- (>>>257)

= 257 -- 25

= 232

输入描述

输入一个正整数N(100<N<1000

输出描述

输出一个整数,表示N - (>>>N)的结果

样例输入

257

样例输出

232

提示

评分标准:

4分:能正确输出第一组数据;

4分:能正确输出第二组数据;

4分:能正确输出第三组数据;

4分:能正确输出第四组数据;

4分:能正确输出第五组数据。

2、 时间限制: 1000MS

内存限制: 65536KB

题目描述:

编程实现:四叶玫瑰数

四叶玫瑰数是指一个四位数,其各位上的数字的四次方之和等于本身。

给定两个正整数N和M,请将N~M(1≤N≤M≤1000000)之间(含N和M)的四叶玫瑰数按从小到大的顺序输出。

例如:N=1234,M=2345时,有一个四叶玫瑰数1634,因为1^4 + 6^4 + 3^4 + 4^4 = 1634,故输出1634。

输入描述

第一行输入两个正整数N、M(1≤N≤M≤1000000)

输出描述

输出一行,包含若干个用一个空格隔开的正整数,表示N~M之间的四叶玫瑰数按从小到大的顺序的输出结果

注意:

题目数据保证给定的N~M范围内至少有一个四叶玫瑰数

样例输入

1234 2345

样例输出

1634

提示

评分标准:

5分:能正确输出第一组数据;

5分:能正确输出第二组数据;

5分:能正确输出第三组数据;

5分:能正确输出第四组数据;

5分:能正确输出第五组数据;

5分:能正确输出第六组数据;

5分:能正确输出第七组数据;

5分:能正确输出第八组数据。

3、 时间限制: 1000MS

内存限制: 65536KB

题目描述:

编程实现:质因数的个数

提示信息:

因数:又称为约数,如果整数a除以整数b(b≠0) 的商正好是整数而没有余数,我们就说b是a的因数。

质数:又称为素数,一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数。2是最小的质数。

质因数:如果一个数a的因数b同时也是质数,那么b就是a的一个质因数,例如:8=2×2×2,2就是8的质因数;12=2×2×3,2和3就是12的质因数。

题目描述:

给定两个正整数N和M(1≤N≤M≤1e7),统计N到M之间(含N和M)每个数所包含的质因数的个数,输出其中最大的个数。

例如:

当N=6,M=10,6到10之间

6的质因数是2、3,共有2个

7的质因数是7,共有1个

8的质因数是2、2、2,共有3个

9的质因数是3、3,共有2个

10的质因数是2、5,共有2个

6到10之间的数中质因数最多的是8,质因数有3个,故输出3。

输入描述

输入两个正整数N和M(1≤N≤M≤1e7),两个正整数之间用一个空格隔开

输出描述

输出一个整数,表示质因数个数中的最大值

样例输入

6 10

样例输出

3

提示

评分标准:

5分:能正确输出第一组数据;

5分:能正确输出第二组数据;

5分:能正确输出第三组数据;

5分:能正确输出第四组数据;

5分:能正确输出第五组数据;

5分:能正确输出第六组数据;

5分:能正确输出第七组数据;

5分:能正确输出第八组数据;

5分:能正确输出第九组数据;

5分:能正确输出第十组数据。

4、时间限制: 1000MS

内存限制: 65536KB

题目描述:

编程实现:最大的矩形纸片

一张半边参差不齐的网格纸(网格边长均为1),有一边是完整没有破损的。现要从中剪出一片面积最大的矩形纸片。

给定网格纸中完整边的长度N(1≤N≤1000000),以及网格中每一列残存部分的高度(1≤高度≤10000),输出能够剪出的最大矩形纸片面积。

输入描述

第一行输入一个正整数N(1≤N≤1000000),表示纸片完整边的长度

第二行输入N个正整数(1≤正整数≤10000),表示每列格子残存部分的高度,两个正整数之间用一个空格隔开

输出描述

输出一个正整数,表示能够剪出的最大矩形纸片面积

样例输入

6

3 2 1 4 5 2

样例输出

8

提示

评分标准:

6分:能正确输出第一组数据;

6分:能正确输出第二组数据;

6分:能正确输出第三组数据;

6分:能正确输出第四组数据;

6分:能正确输出第五组数据;

6分:能正确输出第六组数据;

6分:能正确输出第七组数据;

6分:能正确输出第八组数据;

6分:能正确输出第九组数据;

6分:能正确输出第十组数据。

5、时间限制: 1000MS

内存限制: 65536KB

题目描述:

编程实现:数字游戏

老师给出了一组数,要求小蓝对这组数进行调整,调整的规则如下:

  1. 第1次,从这组数中选出一个最小的数,把它调整为和第二小的数一样大;

  2. 第2次,再从这组数中选出一个最大的数,把它调整为和第二大的数一样大;

  3. 重复执行1、2步骤;

  4. 当这组数中所包含的不同的数少于3个时,结束调整。

现在给定了一组数,请帮小蓝编写程序计算出总共的调整次数,以及调整结束时这组数中的最小数和最大数。

例1:

当这组数是 2 2 2 2时,这组数中所包含的不同的数少于3个(只有2这一种数),无需调整,最后输出

0 2 2

例2

当这组数是 1 3 4 2时,调整过程如下:

  1. 先将这组数中最小的数1,改成2,这组数变为:2 3 4 2

  2. 再将这组数中最大的数4,改成3,这组数变为:2 3 3 2

这时,这组数中只包含2、3两个数了,满足规则4,调整结束,总共调整了2次,故最后输出:

2 2 3

输入描述

第一行输入一个正整数N(3≤N≤1000000),表示这组数中数的个数

第二行输入N个正整数(1≤正整数≤1000000),正整数之间用一个空格隔开

输出描述

输出一行,包含三个整数,分别是总的调整次数、调整结束时的最小值和最大值,整数之间用一个空格隔开

样例输入

4

1 3 4 2

样例输出

2 2 3

提示

评分标准:

8分:能正确输出第一组数据;

8分:能正确输出第二组数据;

8分:能正确输出第三组数据;

8分:能正确输出第四组数据;

8分:能正确输出第五组数据;

8分:能正确输出第六组数据;

8分:能正确输出第七组数据;

8分:能正确输出第八组数据;

8分:能正确输出第九组数据;

8分:能正确输出第十组数据。

6、时间限制: 1000MS

内存限制: 65536KB

题目描述:

编程实现:活动人数

有一个大型企业集团,由N个部门组成,编号从1到N。这些部门之间的层次关系形成了一个树状结构,一个上级部门可能会有1个或多个直接下级部门,一个下级部门只有一个直接上级部门。

本月集团举办了一个大型活动,这次的活动组织方按如下要求安排活动:

  1. 来的人越多越好;

  2. 如果一个上级部门参加本次活动,那么他们的直接下级部门就不能参加,而他的间接下集部门可以参加(如下图,如果部门1参加,那么部门2、3不能参加,而部门4、5、6可以参加)。

请你帮他们计算一下,如何安排可以使参加活动的人数最多,并输出参加活动的最多人数。

例如:当N=6,每个部门编号为1到6,部门上下级关系和部门的人数如下图所示:

注意:示例中,部门1是层级最高的部门,没有直接上级,故将其直接上级部门设为0;

当安排(1、4、5、6)这4个部门参加活动时,人数最多,为11,所以输出11。

输入描述

第一行输入一个正整数N(1≤N≤100000),表示集团所有部门的数量

接下来有N行,每行输入三个非负整数F、S和C,(0≤F≤N,1≤S≤N,F≠S,1≤C≤1000),F表示是部门S的直接上级,C表示部门S的人数,整数之间用一个空格隔开

注意:如果是最上层的部门,其直接上级部门编号为0

输出描述

输出一个整数,表示参加活动的最多人数

样例输入

6

0 1 2

1 2 4

1 3 3

2 4 3

3 5 2

3 6 4

样例输出

11

提示

评分标准:

10分:能正确输出第一组数据;

10分:能正确输出第二组数据;

10分:能正确输出第三组数据;

10分:能正确输出第四组数据;

10分:能正确输出第五组数据;

10分:能正确输出第六组数据;

10分:能正确输出第七组数据;

10分:能正确输出第八组数据;

10分:能正确输出第九组数据;

10分:能正确输出第十组数据。

相关推荐
cxylay20 分钟前
自适应滤波算法分类及详细介绍
算法·分类·自适应滤波算法·自适应滤波·主动噪声控制·anc
茶猫_28 分钟前
力扣面试题 - 40 迷路的机器人 C语言解法
c语言·数据结构·算法·leetcode·机器人·深度优先
轻浮j38 分钟前
Sentinel底层原理以及使用算法
java·算法·sentinel
Abelard_1 小时前
LeetCode--347.前k个高频元素(使用优先队列解决)
java·算法·leetcode
小猪写代码1 小时前
C语言:递归函数(新增)
算法·c#
点云SLAM1 小时前
C++创建文件夹和文件夹下相关操作
开发语言·c++·算法
heeheeai1 小时前
kotlin 函数作为参数
java·算法·kotlin
是十一月末2 小时前
opencv实现KNN算法识别图片数字
人工智能·python·opencv·算法·k-近邻算法
袖清暮雨2 小时前
5_SparkGraphX讲解
大数据·算法·spark
Tisfy2 小时前
LeetCode 3218.切蛋糕的最小总开销 I:记忆化搜索(深度优先搜索DFS)
算法·leetcode·深度优先·题解·记忆化搜索