EXY-TF-1050
第 111 题
假设两个非负高精度整数分别存储在数组 a 和 b 中,且 $a≥ b$。数组采用低位在前的方式存储,即a[0] 表示个位。下面代码中的 c 可以正确保存 a - b 的各位数字。
int borrow = 0;
for (int i = 0; i < len; ++i) {
int t = a[i] - b[i] + borrow;
if (t < 0) {
t += 10;
borrow = 1;
} else {
borrow = 0;
}
c[i] = t;
}
语言:
C++
GESP真题
五级
2026.9
判断题号:
10
EXY-TF-1049
第 112 题
下面的贪心代码一定能对任意硬币面值集合 coins 求出 money 所需的最少硬币数。
int count = 0;
for (int coin : coins) { // coins 按面值从大到小排列
count += money / coin;
money %= coin;
}
语言:
C++
GESP真题
五级
2026.9
判断题号:
9
EXY-TF-1048
第 113 题
归并排序的递推式为 $T(n)=2T(n/2)+O(n)$,对应的时间复杂度为 $O(nlog n)$。
语言:
C++
GESP真题
五级
2026.9
判断题号:
8
EXY-TF-1047
第 114 题
快速排序中如果选取区间第一个元素作为枢轴。当输入数组已经升序排列时,其最坏时间复杂度仍为 $O(nlog n)$。
语言:
C++
GESP真题
五级
2026.9
判断题号:
7
EXY-TF-1046
第 115 题
若数组 a 已按升序排列,下面函数能够返回最后一个小于等于 x 的元素下标;如果不存在,则返回-1 。
int findLastLE(const vector<int> &a, int x) {
int l = 0, r = (int)a.size() - 1;
int ans = -1;
while (l <= r) {
int mid = l + (r - l) / 2;
if (a[mid] <= x) {
ans = mid;
l = mid + 1;
} else {
r = mid - 1;
}
}
return ans;
}
语言:
C++
GESP真题
五级
2026.9
判断题号:
6
当前页显示 111 - 115
,共 1000 道判断题