通过海量题库、编程比赛和实时排名,系统化提升您的编程能力。
"CSP考试" 试卷中 CSP-S1提高级初赛试卷[2020] 中有题目如下:
第1题
#include <iostream> #include <cstdlib> using namespace std; int n; int d[10000]; int find(int L, int R, int k) { int x = rand() % (R - L + 1) + L; swap(d[L], d[x]); int a = L + 1, b = R; while (a < b) { while (a < b && d[a] < d[L]) ++a; while (a < b && d[b] >= d[L]) --b; swap(d[a], d[b]); } if (d[a] < d[L]) ++a; if (a - L == k) return d[L]; if (a - L < k) return find(a, R, k - (a - L)); return find(L + 1, a - 1, k); } int main() { int k; cin >> n; cin >> k; for (int i = 0; i < n; ++i) cin >> d[i]; cout << find(0, n - 1, k); return 0; }
假设输入的 n,k 和 d[i] 都是不超过 10000 的正整数,且 k 不超过 n,并假设 rand() 函数产生的是均匀的随机数。
4)当输入的 d[i] 是严格单调递减序列时,第 17 行的“swap”平均执行次数是( )
O(n^2)
O(n)
O(nlogn)
O(logn)
所属试卷:CSP-S1提高级初赛试卷[2020]
运行下列程序时,若没有test.dat文件,则( )。
算法的空间复杂度是指( )。
有以下程序:程序运行后的输出结果是( )。
下列选项中,不属于数据管理员(DBA)职责的是( )。
有以下程序程序的运行结果是( )。
有以下程序:程序运行后的输出结果是。
若要求从键盘读入含有空格字符的字符串,应使用函数。
Python标准库os.path中用来判断指定文件是否
已知列表 x=[1,3,2],那么执行语句 y=lis
已知函数定义def demo(x,y,op):retu
以下程序功能是:计算y年m1月d1日与童年的m2月d2
申请免费电子信箱必需( )。
在Linux系统中,用来存放系统所需要的配置文件和子目
下面哪个参数可以删除一个用户并同时删除用户的主目录?
E-R方法的三要素是:实体、属性和 。
数据的逻辑结构是指数据的各数据项之间的逻辑关系。
假设主机 H 通过 HTTP/1.1 请求浏览某 We
程序段:循环体语句执行_____次。
设x和y均为int型变量,则以下for循环中的scan
设有以下共用体类型说明和变量定义,则变量c在内存所占字
格式字符%x用来以八进制形式输出整数。
将a、b、c三个结点链成一个单向链表,并给各结点的数据
1)判断:输入的字符串应当只由大写字母组成,否则在访问
输入 :3输出 :____
输入 :3AB:ACDEbFBkBDAR:ACDBrT
输入: 5 13输出: _________
( 找第 k 大的数 ) 给定一个长度为 1,000,
地面上有标号为 A、B、C 的3 根细柱,在 A 柱上
输入:9 3 9 4输出:______________
将 5 个数的序列排序,不论原先的顺序如何,最少都可以
更多选择题
更多填空题
全国计算机等级考试《二级Java语言程序设计》真题(五)
全国计算机等级考试《二级Java语言程序设计》真题(四)
全国计算机等级考试《二级Java语言程序设计》真题(三)
全国计算机等级考试《二级Java语言程序设计》真题(二)
全国计算机等级考试《二级Java语言程序设计》真题(一)
计算机二级Python语言程序设计模拟试卷
Python第三方库