选择题 共10道

01 02 03 04 05 06 07 08 09 10


判断题 共10道

11 12 13 14 15 16 17 18 19 20


编程题 共2道

21 22

E1144 CIE-202602-C++五级-真题-练习

选择题 共10道
01

以下代码的输出是?

set<int> s;
s.insert(5);
s.insert(2);
s.insert(8);
for (int x : s) cout << x <<"";
2分
登录后查看选项
02

以下代码的输出是?

int f[10];
f[0]= 0; 
f[1]= 1;
for (int i = 2; i<10; i++){
f[i] = f[i-1] + f[i-2];
cout << f[8];
2分
登录后查看选项
03

计算斐波那契序列应使用哪种算法?

2分
登录后查看选项
04

在一个有序序列里,二分查找一个给定的键值,算法的时间复杂度是?

2分
登录后查看选项
05

以下代码的时间复杂度为?

for(int step=1; step<n; step=step*2){
	std::cout<<step<<"\n";
}
2分
登录后查看选项
06

以下代码的输出是?

int f(int n) {
  if(n == 0) return 2;
  return n*f(n-1);
}
int main(){
  cout << f(3);
}
2分
登录后查看选项
07

若 pre[i] = a[1] + … + a[i] 则能表示 a[3] 到 a[9] 的和公式是?

2分
登录后查看选项
08

以下代码的输出是?

map<string, int> m;
m[“apple”]= 5;
m[“banana”] = 3:
cout << m["apple"];
2分
登录后查看选项
09

查找键"key"是否存在,正确的代码是?

2分
登录后查看选项
10

'set'的组织特点是?

2分
登录后查看选项
判断题 共10道
11

二分查找时,需要保证搜索序列是有序的,否则无法保证正确性。

2分
登录后查看选项
12

二分查找可以用于查找旋转数组中的元素。

2分
登录后查看选项
13

递归程序书写不当可能导致栈溢出。

2分
登录后查看选项
14

前缀和可以用于解决任意区间求最大值的问题。

2分
登录后查看选项
15

模运算中,(a-b) % m 必然等于(a % m)- (b % m)。

2分
登录后查看选项
16

如果一个数列满足递推关系 an=2an-1-3 ,那么该数列是等差数列。

2分
登录后查看选项
17

'map'中的一个键不能对应两组数据。

2分
登录后查看选项
18

'map'的查找单个键的时间复杂度是O(log n)。

2分
登录后查看选项
19

'set'的元素按大小降序排列。

2分
登录后查看选项
20

'set'的'insert"操作不会插入重复元素。

2分
登录后查看选项
编程题 共2道
21

字符串的不同字串

题目描述

给定一个由小写英文字母组成的字符串 s。请问 s的不同非空子串有多少种?

子串是指字符串中连续的一段字符。例如,xxx 是 yxxxy 的子串,但不是 xxyxx 的子串。

输入

输入一行,包含一个字符串 s。

输出

输出一个整数,表示 s的不同非空子串的数量。

数据范围

s仅由小写英文字母组成。

1≤∣s∣≤100,其中 ∣s∣表示字符串的长度。

输入样例1

aababc

输出样例1

17

输入样例2

abracadabra

输出样例2

54

30分
登录后作答
22

坐标选点

题目描述

修建了一条长度为 m 公里的铁路,起点和终点已经建有火车站。铁路沿线有 n 座城市(城市不位于起点或终点),第 i 座城市到铁路起点的距离为 ai 公里。

现在计划在这 n 座城市中选择 c 座修建火车站,使得所有火车站(包括起点和终点的火车站)之间的最小相邻距离尽可能大。请你计算这个最小相邻距离的最大可能值。

输入

第一行包含三个正整数n、c、m,分别表示城市数量、计划修建的火车站数量以及铁路总长度。

第二行包含n个正整数a1,a2,...,an,表示每座城市到铁路起点的距离。

输出

输出一个整数,表示最小相邻距离的最大可能值。

数据范围

1≤c≤n≤10^6,1≤ai<m≤10^9,输入中的所有数值均为整数

输入样例1

5 3 10

1 2 8 4 9

输出样例1

2

30分
登录后作答