通过海量题库、编程比赛和实时排名,系统化提升您的编程能力。
"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); } } }
②处应填( )。
a1[m1] == a2[m2]
a1[m1] <= a2[m2]
a1[m1] >= a2[m2]
a1[m1] != a2[m2]
所属试卷:CSP-S1提高级初赛试卷[2022]
有以下定义和程序,以下不合语法的调用语句是。
下列关于构造函数的描述中,错误的是。
有如下程序:运行这个程序的输出结果是。
给定程序MODI1.C中函数fun功能是:将长整型数中
有以下程序程序的输出结果是( )。
下面对软件特点描述不正确的是( )。
表达式sum(range(1,10,2))的值为___
字典对象的________方法返回字典的“值”列表。
下面代码的执行结果是( )。
#编写函数,求任意整数的二进制形式中最后连续0的个数。
已知x={'a':'b','c':'d'},那么表达式
已知x =[1,2],那么执行语句 x[0:1]=[3
已知列表x=[1,2],执行语句y=x[:]后,表达式
若运行时输入:4.4<回车>,则以下程序的运行结果是
( )服务用来确认网络中信息传送的源结点与目的结点的用
有以下程序 程序运营后的输出结果是____
论述实时信号、非实时信号、可靠信号、不可靠信号四个概念
定义的游标cur读取student表中学生名单(含学号
一个事务的执行不能被其他事务干扰,这种特征称为事务的
循环单链表的最大优点是:从任一结点出发都可访问到链表中
32 位补码所能表示的整数范围是( )。
如果不对静态数组赋初值,则计算机默认静态数组初始值为0
执行语句char str[81]="abcdef";后
已知x=3,y=2,则表达式x*=y+8的值为____
则x的值为_____。
以下叙述中正确的是。
设栈的存储空间为S(1:50),初始状态为top=0,
4)若输入的第一个字符串长度由 100个不同的字符构成
输入: 9 121 22 33 44 55 66 1
双向链表中有两个指针域 llink 和 rlink ,
更多选择题
更多填空题
第十章 C++流
第九章 C++模板
第八章 C++运算符重载
C++语言程序设计真题5
C++语言程序设计真题4
C++语言程序设计真题3
C++语言程序设计真题2