选择题 共10道
判断题 共10道
编程题 共2道
有递推公式f(n) = 2 * f(n - 1) + 1,f(1) = 1,则f(4) 的值是?
以下关于贪心算法的说法,正确的是?
已知数组 arr[6] = {2, 4, 6, 8, 10, 12},前缀和数组 preSum[0] = 0,preSum[i] = arr[0]+arr[1]+⋯+arr[i-1],则区间 [2, 4](下标从 0 开始)的元素和为?
对原数组的区间 [l, r] 全部加上 val,对差分数组的操作是?
在长度为 n 的有序数组中,二分查找的最坏时间复杂度是?
以下哪个问题不适合用双指针算法求解?
以下哪个 STL 容器是基于红黑树实现的,元素自动有序且不重复?
STL 中,用于在容器中查找指定元素的函数是?
以下关于vector 容器的说法,错误的是?
计算整数 a 的 b 次方,若使用快速幂算法,时间复杂度为?
快速幂的核心是将指数分解为二进制,减少乘法运算的次数。
递推算法分为顺推和逆推两种,斐波那契数列是顺推的典型应用。
哈夫曼编码的构建过程中,每次选择权值最小的两个节点合并,使用了贪心思想。
二维前缀和可以快速求出二维数组中任意子矩阵的元素和。
差分算法不能处理多次区间修改、单点查询类问题。
二分查找只能用于查找元素。
快慢指针可以用于查找链表的中间节点。
map 容器存储键值对,键唯一不可重复。
string 类的c_str() 函数可以将string 对象转换为 C 风格的 const char*字符串。
queue 先进先出,队头插入元素,队尾删除元素。
数轴上分布着 n 个能量节点,第 i 个节点的坐标为 xi。当两个节点的距离小于等于 d 时,会产生能量共鸣。
求一共有多少组节点会发生能量共鸣。
第一行,两个整数表示 n 与 d。
第二行,n 个整数,表示 x1,x2,…,xn。
单个整数:表示有多少对点可以会产生能量共鸣。
1≤n≤10^5,1≤d≤10^9,1≤xi≤10^9
4 25
30 40 10 20
5
一共有 n 个小任务,第 i 个任务会消耗 ai 点体力、bi 点心神。你可以自由安排任务的完成顺序,逐个依次做完任务。当累计消耗的体力总和超过 x,或是累计消耗的心神总和超过 y 时,会立刻停下无法继续做事。
求:在运气最差、顺序最不利的情况下,你最少会完成多少个任务就被迫停止。
第一行,三个整数表示 n, x, y;
第二行,n 个整数表示 a1,a2,…,an;
第三行,n 个整数表示 b1,b2,…,bn。
输出一个整数,表示最少完成的任务数量。
1≤n≤2×10^5,1≤x,y≤2×10^14,1≤ai,bi≤10^9。
4 7 18
2 3 5 1
8 8 1 4
2
8 30 30
1 2 3 4 5 6 7 8
8 7 6 5 4 3 2 1
6