通过海量题库、编程比赛和实时排名,系统化提升您的编程能力。
"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); } } }
①处应填( )。
(m1 + m2) * 2
(m1 - 1) + (m2 - 1)
m1 + m2
(m1 + 1) + (m2 + 1)
所属试卷:CSP-S1提高级初赛试卷[2022]
下列因素中,对C++编译器区分重载函数无意义的是
下列字符串中,不可以用作C++标识符的是。
以下代码的输出结果是( )。
编写代码,输出 1~100 的所有素数。参考答案:
请编写一个函数fun,它的功能是:将一个表示正整数的数
请编写一个函数fun,它的功能是:找出一堆整型数组元素
以下叙述中正确的是( )。
有以下程序程序运行后的输出结果是( )。
给定程序中,函数fun的功能是:将形参n中,各位上为偶
流程图是描述算法的很好的工具,一般的流程图中由几种基本
有以下程序:程序的运行结果是。
按下列要求编程,实现类的定义,并在主函数中测试这个类。
动态绑定的多态性是通过虚函数实现的。
以下能正确表述算式 sin(2nr+30°)的C语言表
请阅读程序段:上面程序段的输出结果是_________
已有定义inta;floatb,x;charc1,c2
在超级用户下显示Linux系统中正在运行的全部进程,应
下面数据库名称合法的是( )
有实现xxy的两个C语言函数如下:unsigned u
假设输入的 n 为不大于 100 的正整数,k 为不小
C语言的注释定界符是( )。
给定程序BLANK1.C中,函数fun的功能是在数组中
(最优子序列)取 m = 16,给出长度为 n 的整数
今有一空栈 S,对下列待进栈的数据元素序列a,b,c,
链表不具有的特点是 ( ) 。
(子矩阵) 给输入一个 n1*m1 的矩阵 a,和 n
输入: 9 121 22 33 44 55 66 1
(1) 输入: 7 输出: _______ (4 分
有如下的一段程序:1. a=1;2. b=a;3. d
输入:9734526输出:______________
更多选择题
更多填空题
第十章 C++流
第九章 C++模板
第八章 C++运算符重载
C++语言程序设计真题5
C++语言程序设计真题4
C++语言程序设计真题3
C++语言程序设计真题2