蓝桥等考C++组别
十三
级
第一部分:选择题
1、C++ L
13
(15分)
猫捉了许多老鼠。老鼠按照猫的命令,从高到矮站成一排。
每
只老鼠
都会与自己
前面相邻
的一只
老鼠
比较,如果比对方
高
就与对方交换位置,直到
符合
要求为止。这种
排队
的方法类似于( )算法
。
桶
排序
插入排序
冒泡排序
选择
排序
正确答案:
C
2、C++ L
13
(15分)
运行下面程序后,数组
a
中的值将会变为(
)。
int
a[]
=
{4, 2, 6, 8, 9, 5, 2, 7}
;
sort(a
+
1
, a
+
6
)
;
2 4 5 6 8 9 2 7
4 2 5 6 8 9 2 7
4 2 6 8 9 5 2 7
4 2 2 5 6 8 9 7
正确答案:
B
3、C++ L
13
(20分)
5
名
足球运动员
站成一排,他们的
的球衣号码分别是
8, 23, 4,
12,
16。
按号码从小到大的顺序排队,每次只能交换相邻两个运动员,最少需要交换( )次。
2
3
4
6
正确答案:C
第二部分:编程题
4、C++ L
13
最大的数
(20分)
题目名称:
最大的
数
题目描述:
输入一个
有n个无重复元素的
整数
数组a
,
输出数组中最大的数。
提示:
如使用排序库函数sort(),需要包含头文件
#include
<algorithm>
输入:
第一行是一个正整数
n(
2<=
n<=20)
;
第二行包含n个不重复的整数a[i](0<=a[i]<=100),相邻两个整数之间用空格隔开。
输出:
一
个整数,为
数组a中最大的数
。
输入样例:
5
4 5 1 3 8
输出样例:
8
参考程序:
#include <iostream>
#include
<algorithm>
using namespace std;
int n;
int a[2
0
];
int main()
{
cin >> n;
for(int i =
0
; i < n; i++)
{
cin >> a[i];
}
sort(a, a + n);
cout << a[
n - 1
];
return 0;
}
测试数据:
1.in
5
4 5 1 3 8
1.out
8
2.in
4
73 6 89 53
2.out
89
3.in
17
71 82 33 62 77 89 56 76 29 40 41 72 7 45 79 94 87
3.out
94
4.in
6
0 73 81 86 32 88
4.out
88
5.in
11
91 19 5 21 4 65 3 9 47 31 64
5.out
91
5、C++ L
13
套娃
(30分)
题目名称:
套娃
题目描述:
套娃是俄罗斯特产的木制玩具,由许多个图案一样的空心娃娃一个套一个组成。
桌子上有n个娃娃,包括5种型号,分别是1~5号,1号最小,5号最大。大的娃娃可以套在比它更小的娃娃外面,如果这样做,你只能看见一个大娃娃。
现在要把这n个娃娃,能套在一起的都套起来,问,能凑成几套完整的套娃?桌子上最少能看见几个娃娃?
例如,有10个娃娃,型号分别是1, 3, 1, 2, 1, 5, 2, 3, 4, 5。
可以凑成1套完整的,因为4号娃娃最少,只有1个;
桌子上最少能看见3个娃娃,因为能套的都已经套起来了,包括,一套完整的:{1, 2, 3, 4, 5},两套不完整的:{1, 2, 3, 5},和{1}。
输入:
第一行是一个正整数
n(n<=
100,
0
00
)代表娃娃数量
;
第二行包含n个1~5的整数,代表每个娃娃的型号,相邻两个整数之间用空格隔开。
输出:
第一行一个
整数,为
能凑成完整套娃的数量
;
第二行一个
整数,为桌子上
最少能看见的娃娃的数量。
输入样例:
10
1 3 1 2 1 5 2 3 4 5
输出样例:
1
3
参考程序:
#include <iostream>
#include <algorithm>
using namespace std;
int n, ans = 0;
int a[100000], b[6];
int main()
{
cin >> n;
for(int i = 0; i < n; i++)
{
cin >> a[i];
b[a[i]]++; //统计不同规格娃娃的个数
}
sort(b + 1, b + 6); //从小到大排序
cout << b[1] << endl; //最小值是第一个答案
cout << b[5] << endl; //最大值是第二个答案
return 0;
}
测试数据:
1.in
10
1 3 1 2 1 5 2 3 4 5
1.out
1
3
2.in
10
3 3 1 1 1 4 4 1 4 3
2.out
0
4
3.in
20
3 3 2 1 5 2 3 2 4 3 1 1 3 1 2 5 2 5 2 3
3.out
1
6
其余略
蓝桥杯青少组C++组别13级编程练习真题(第3套,共9套)