通过海量题库、编程比赛和实时排名,系统化提升您的编程能力。
"CSP考试" 试卷中 CSP-J1入门级初赛试卷[2020] 中有题目如下:
第1题
(最小区间覆盖)给出 n 个区间,第 i 个区间的左右端点是[ai,bi]。现在要在这些区间中选出若干个,使得区间 [0,m][0,m] 被所选区间的并覆盖(即每一个 0≤i≤m 都在某个所选的区间中)。保证答案存在,求所选区间个数的最小值。
输入第一行包含两个整数 n 和 m(1≤n≤5000, 1≤m≤109)。
接下来 n 行,每行两个证书 ai,bi(0≤ai,bi≤m)。
提示:使用贪心法解决这个问题。先用 Θ(n^2) 的时间复杂度排序,然后贪心选择这些区间。
试补全程序。
#include <iostream> using namespace std; const int MAXN = 5000; int n, m; struct segment { int a, b; } A[MAXN]; void sort() // 排序 { for (int i = 0; i < n; i++) for (int j = 1; j < n; j++) if (①) { segment t = A[j]; ② } } int main() { cin >> n >> m; for (int i = 0; i < n; i++) cin >> A[i].a >> A[i].b; sort(); int p = 1; for (int i = 1; i < n; i++) if (③) A[p++] = A[i]; n = p; int ans = 0, r = 0; int q = 0; while (r < m) { while (④) q++; ⑤; ans++; } cout << ans << endl; return 0; }
① 处应填( )
A[j].b > A[j - 1].b
A[j].a < A[j - 1].a
A[j].a > A[j - 1].a
A[j].b < A[j - 1].b
所属试卷:CSP-J1入门级初赛试卷[2020]
假定MyClass为一个类,则该类的拷贝构造函数的声明
输入 4 个数字,各数字采用空格分隔,对应为变量 x0
下列数据结构中,不适合 直接使用折半查找的是 ( )。
有以下程序:以上程序执行后abc.dat文件的内容是
若在程序中变量均已定义成int类型,且已赋大于1的值,
有以下程序程序执行后的输出结果是( )。
已知x=[[1,3,3],[2,3,1]],那么表达式
编写程序实现功能:对于给定的一个百分制成绩,改用相应的
以下程序时将矩阵a、b的和存入矩阵c中并按矩阵形式输出
在局域网中,MAC指的是( )。
在OSI参考模型中的网络分层,通信子网与资源子网的分界
线性表的长度为n。在最坏情况下,比较次数为n-1的算法
有以下程序 程序运营后的输出结果是____
在Linux系统中,以( )方式访问设备。
使用ln命令将生成了一个指向文件old的符号链接new
逻辑层的数据模型是描述数据库数据整体的逻辑结构,称为
外模式/模式映象为数据库提供了_______独立性。
MySQL提供了下面4种事务隔离级别,但只有 ____
创建在两个列或者多个列上的索引称为 ______ 。
创建主键约束(PRIMARY KEY)或唯一约束(UN
使用 ____ 是提高select操作性能的最佳途径
在关系数据库中,参照完整性要求基本关系的( )。
下列说法正确的是( )
对假设栈 S 和队列 Q 的初始状态为空。存在 e1~
软件需求规格说明书的作用不包括( )。
输入:QuanGuoLianSai输出:( )
(快速幂)请完善下面的程序,该程序使用分治法求xp m
(排列数)输入两个正整数 n,m(1<n<20,1<m
设A=B=D=true,C=E=false,以下逻辑运
全国信息学奥林匹克的官方网站为参与信息学竞赛的老师同学
更多选择题
更多填空题
第十章 C++流
第九章 C++模板
第八章 C++运算符重载
C++语言程序设计真题5
C++语言程序设计真题4
C++语言程序设计真题3
C++语言程序设计真题2