通过海量题库、编程比赛和实时排名,系统化提升您的编程能力。
"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; }
⑤处应填( )
r = max(r, A[q + 1].b)
r = max(r, A[q].b)
r = max(r, A[q + 1].a)
q++
所属试卷:CSP-J1入门级初赛试卷[2020]
在语句cin>>data;中,cin是
下面关于构造函数和析构函数的描述中,错误的是。
“++”运算符的操作数个数是( )。
正方形绘制。使用 turtle 库,绘制一个边长值为
下列数据结构中,能够按照“先进后出”原则存取数据的是
有以下程序:当执行程序时,按下列方式输入数据(从第一列
有以下程序:程序运行后的输出结果是。
改正下面程序段中的错误,写出整个正确的程序段参考答案:
已知x=[1,2,3],那么表达式not(set(x*
已知列表 x=[1,2,3],那么执行语句x. ins
Python内置函数___________用来打开或创
#编写一个函数,从键盘上输入两个数,求最大公约数和最小
假设变量a和b均为整型,以下语句可以不借助任何变量把a
在C语言中,输入操作是由库函数____________
下列属于按网络信道带宽把网络分类的是( )
成批添加用户的命令是 ______
Linux系统下经常使用的两种桌面环境是:____
grep -E '[Hh]enr(y|ietta)'
将前一个命令的标准输出作为后一个命令的标准输入,称之为
Linux主要采用了 和 两种动态内存管理
在数据库的三级模式结构中,模式只有 个
在SQL中,用 ____命令可以存储表中的内容,即事物
create use创建用户时,用户帐号的格式为
在视图上不能完成的操作是
如果你想通过拨号上网,必须拥有特定的服务商帐号,这些服
将第19行中的“v[m][n]”替换为“v[n][m]
下列数据流图(DFD)构造规则中正确的是
若有定义语句int b=2;,则表达式(b<<2)/
有以下程序,程序运行后的输出结果是( )。
以下关于计算复杂度的说法中,正确的有。
更多选择题
更多填空题
第十章 C++流
第九章 C++模板
第八章 C++运算符重载
C++语言程序设计真题5
C++语言程序设计真题4
C++语言程序设计真题3
C++语言程序设计真题2