。其中 9 存储在哈希表哪个地址中 ( )。对于如下二叉树,下面关于访问的顺序说法错误的是( )。

下面C++程序的运行结果为( )。

下面C++程序中,函数 query 的时间复杂度是( )。

下面C++程序的运行结果为( )。
#include <iostream>
using namespace std;
int f(int n) {
if (n <= 2) return n * 2;
return f(n - 1) + f(n - 2);
}
int main() {
cout << f(5) << endl;
return 0;
}一个简单无向图 G 有36条边,且每个顶点的度数都为4,则图 G 的顶点个数为( )。
( n为正整数),和 T(0)=1,那么这个算法的时间复杂度是( )。下面哪一个可能是下图的深度优先遍历序列( )。

下面这个有向图的强连通分量的个数是( )。

试题名称:城市规划
时间限制:1.0 s
内存限制:512.0 MB
3.1.1 题目描述
A 国有 n 座城市,城市之间由 m 条双向道路连接,任意一座城市均可经过若干条双向道路到达另一座城市。城市依次以1,2,...,n 编号。第 i(1<=i<=m )条双向道路连接城市 ui 与城市 vi。
对于城市 u 和城市 v 而言,它们之间的连通度 d(u,v)定义为从城市 u 出发到达城市 v 所需经过的双向道路的最少条数。由于道路是双向的,可以知道连通度满足 d(u,v)=d(v,u),特殊地有 d(u,v)=0。
现在 A 国正在规划城市建设方案。城市 u 的建设难度为它到其它城市的最大连通度。请你求出建设难度最小的城
市,如果有多个满足条件的城市,则选取其中编号最小的城市。形式化地,你需要求出使得
最小的 u,若存在多个可能的 u 则选取其中最小的。
3.1.2 输入格式
第一行,两个正整数 n,m ,表示 A 国的城市数量与双向道路数量。
接下来 m 行,每行两个整数 ui,vi,表示一条连接城市 ui与城市 vi 的双向道路。
3.1.3 输出格式
输出一行,一个整数,表示建设难度最小的城市编号。如果有多个满足条件的城市,则选取其中编号最小的城市。
3.1.4 样例
3.1.4.1 输入样例 1
3 3 1 2 1 3 2 3
3.1.4.2 输出样例 1
1
3.1.4.3 输入样例 2
4 4 1 2 2 3 3 4 2 4
3.1.4.4 输出样例 2
2
3.1.5 数据范围

试题名称:学习小组
时间限制:1.0 s
内存限制:512.0 MB
3.2.1 题目描述
班主任计划将班级里的 名同学划分为若干个学习小组,每名同学都需要分入某一个学习小组中。班级里的同学依次以 1,2,。。。,n 编号,第 名同学有其发言积极度 ci。
观察发现,如果一个学习小组中恰好包含编号为 p1,p2,...pk的 k 名同学,则该学习小组的基础讨论积极度为 ak,综合讨论积极度为
,也即基础讨论积极度加上小组内同学的最大发言积极度与最小发言积极度之差。
给定基础讨论积极度 a1,a2,...an,请你计算将这 n 名同学划分为学习小组的所有可能方案中,综合讨论积极度之和的最大值。
3.2.2 输入格式
第一行,一个正整数 n ,表示班级人数。
第二行, n 个非负整数 c1,c2,...cn,表示每位同学的发言积极度。
第三行, n 个非负整数 a1,a2,...an,表示不同人数学习小组的基础讨论积极度。
3.2.3 输出格式
输出一行,一个整数,表示所有划分方案中,学习小组综合讨论积极度之和的最大值。
3.2.4 样例
3.2.4.1 输入样例 1
4 2 1 3 2 1 5 6 3
3.2.4.2 输出样例 1
12
3.2.4.3 输入样例 2
8 1 3 2 4 3 5 4 6 0 2 5 6 4 3 3 4
3.2.4.4 输出样例 2
21
3.2.5 数据范围
