通过海量题库、编程比赛和实时排名,系统化提升您的编程能力。
"CSP考试" 试卷中 CSP-S1提高级初赛试卷[2022] 中有题目如下:
第1题
(归并第 k 小)已知两个长度均为 n 的有序数组 a1 和 a2(均为递增序,但不保证严格单调递增),并且给定正整数 k(1≤k≤2n),求数组 a1 和 a2 归并排序后的数组里第 k 小的数值。
#include<bits/stdc++.h> using namespace std; int solve(int *a1, int *a2, int n, int k) { int left1 = 0, right1 = n - 1; int left2 = 0, right2 = n - 1; while (left1 <= right1 && left2 <= right2) { int m1 = (left1 + right1) >> 1; int m2 = (left2 + right2) >> 1; int cnt = ①; if (②) { if (cnt < k) left1 = m1 + 1; else right2 = m2 - 1; } else { if (cnt < k) left2 = m2 + 1; else right1 = m1 - 1; } } if (③) { if (left1 == 0) { return a2[k - 1]; } else { int x = a1[left1 - 1], ④; return std::max(x, y); } } else { if (left2 == 0) { return a1[k - 1]; } else { int x = a2[left2 - 1], ⑤; return std::max(x, y); } } }
④处应填( )。
y = a1[k - left2 - 1]
y = a1[k - left2]
y = a2[k - left1 - 1]
y = a2[k - left1]
所属试卷:CSP-S1提高级初赛试卷[2022]
下列语句中能正确定义变量的是
有如下定义,其中的四个函数定义中正确的是。
输入 4 个数字,各数字采用空格分隔,对应为变量 x0
(本题 11 分)对于题 43 中计算机 M 和程序
有以下程序:当执行程序时,按下列方式输入数据(从第一列
设有定义:int a,b; float x,y;则以下
有以下程序程序运行后的输出结果是( )。
若有定义语句:则下面对m数组元素的引 用中错误的是
在Python中定义类时,与运算符“//”对应的特殊方
表达式set([1,1,2、3])的值为_______
在实际使用的IP地址中,主机号不能为全“0”和全“1”
在使用mkdir命令创建新的目录时,在其父目录不存在时
Linux中,提供TCP/IP包过滤功能的软件叫什么?
ER模型是对现实世界的一种抽象,它的主要成分有分类、
在数据库的三级模式结构中,数据是按 模式的描述存储在
将数据库完全复制到备份文件中称为 ____ 备份,又称
语句grant select,update on __
以下表达降序排序的是
下面关于哈希(Hash,杂凑)查找的说法正确的是
散列法的平均检索长度不随表中结点数目的增加而增加,而是
视图一般不用于下列哪些语句( )
以下排序算法的常见实现中,哪个选项的说法是错误的( )
功能:计算出k以内最大的10个能被13或17整除的自然
求字符串长度的库函数是_____,只写函数名即可。
设x和y均为int型变量,则以下for循环中的scan
有三个关系R,S和T如下图所示,则由关系R和S得到关系
输入 :3输出 :____
输入:6 3输出:( )
输入:Hello, my name is Lostmo
(二叉查找树)二叉查找树具有如下性质:每个节点的值都大
更多选择题
更多填空题
第十章 C++流
第九章 C++模板
第八章 C++运算符重载
C++语言程序设计真题5
C++语言程序设计真题4
C++语言程序设计真题3
C++语言程序设计真题2