题目编号
语言
全部语言
等级
全部等级
知识点
选择知识点 (0)
找到 1260 道单选题
EXY-SC-1095
第 406 题
当 $n = 7$ 时,下面函数的返回值为( )。
int fun(int n) {
    if (n == 1) return 1;
    else if (n >= 5) return n * fun(n - 2);
    else return n * fun(n - 1);
}
A
105
B
840
C
210
D
420
语言: C++
GESP真题 五级
2024.9
单选题号: 15
EXY-SC-1094
第 407 题
以下关于高精度运算的说法错误的是( )。
A
高精度计算主要是用来处理大整数或需要保留多位小数的运算。
B
大整数除以小整数的处理的步骤可以是,将被除数和除数对齐,从左到右逐位尝试将除数乘以某个数,通过减法得到新的被除数,并累加商。
C
高精度乘法的运算时间只与参与运算的两个整数中长度较长者的位数有关。
D
高精度加法运算的关键在于逐位相加并处理进位。
语言: C++
GESP真题 五级
2024.9
单选题号: 14
EXY-SC-1093
第 408 题

根据下述二分查找法,在排好序的数组 $1, 3, 6, 9, 17, 31, 39, 52, 61, 79$ 中查找数值 $31$,循环 while (left <= right) 执行的次数为( )。

int binary_search(vector<int>& nums, int target) {
    int left = 0;
    int right = nums.size() - 1;
 
    while (left <= right) {
        int mid = left + (right - left) / 2;
 
        if (nums[mid] == target) {
            return mid;
        }
        else if (nums[mid] < target) {
            left = mid + 1;
        }
        else {
            right = mid - 1;
        }
    }
 
    return -1; // 如果找不到目标元素,返回-1
}
A

1

B

2

C

3

D

4

语言: C++
GESP真题 五级
2024.9
单选题号: 13
EXY-SC-1092
第 409 题
关于分治算法,以下哪个说法正确?
A
分治算法将问题分成子问题,然后分别解决子问题,最后合并结果。
B
归并排序不是分治算法的应用。
C
分治算法通常用于解决小规模问题。
D
分治算法的时间复杂度总是优于 $O(n \log(n))$。
语言: C++
GESP真题 五级
2024.9
单选题号: 12
EXY-SC-1091
第 410 题
现在有 $n$ 个人要过河,每只船最多载2人,船的承重为 $100\,\text{kg}$。下列代码中,数组 weight 中保存有 $n$ 个人的体重(单位为 $\text{kg}$),已经按从小到大排好序,代码输出过河所需要的船的数目,采用的思想为( )。
int i, j;
int count = 0;
for (i = 0, j = n - 1; i < j; j--) {
    if (weight[i] + weight[j] <= 100) {
        i++;
    }
    count++;
}
printf("过河的船数: %d\n", count);
A
枚举算法
B
贪心算法
C
迭代算法
D
递归算法
语言: C++
GESP真题 五级
2024.9
单选题号: 11
当前页显示 406 - 410 ,共 1260 道单选题