- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
2025年青少年软件编程(C/C++)等级考试(九级)模拟卷(二十)
一、选择题(每题3分,共36分)
1.关于强连通分量,以下说法正确的是:
A.强连通分量只存在于无向图中
B.强连通图至少包含两个强连通分量
C.有向图的强连通分量中任意两点互相可达
D.Kosaraju算法通过一次DFS即可找到所有强连通分量
2.使用Tarjan算法求割点时,判断条件low[v]=dfn[u]表示:
A.v可以通过非树边到达u的祖先
B.v无法不经过u到达u的祖先
C.u是深度优先搜索树的根节点
D.v是u的父节点
3.关于模运算,以下哪个等式成立:
A.(a/b)%m=(a%m)/(b%m)
B.(a-b)%m=(a%m-b%m)%m
C.(a+b)%m=(a%m+b%m+m)%m
D.(a*b)%m=(a%m*b%m+m)%m
4.扩展欧几里得算法不能用于:
A.求解最大公约数
B.求解线性同余方程
C.计算矩阵的逆
D.求模逆元
5.当m不是质数时,求a的模逆元可以使用:
A.费马小定理
B.扩展欧几里得算法
C.快速幂算法
D.高斯消元法
6.矩阵快速幂算法的时间复杂度是:
A.O(n)
B.O(nlogk)
C.O(n^3logk)
D.O(n^2logk)
7.高斯消元法可以用于:
A.求解线性方程组
B.计算矩阵的行列式
C.求矩阵的秩
D.以上都可以
8.容斥原理中,三个集合A、B、C的并集大小为:
A.|A|+|B|+|C|-|A∩B|-|A∩C|-|B∩C|
B.|A|+|B|+|C|-|A∩B|-|A∩C|-|B∩C|+|A∩B∩C|
C.|A|+|B|+|C|-|A∩B∩C|
D.|A∪B|+|A∪C|+|B∪C|-|A∪B∪C|
9.关于缩点技术,以下说法错误的是:
A.可以将强连通分量缩为一个点
B.缩点后的图一定是无环的
C.缩点可以用于求解最长路径问题
D.缩点会改变原图的连通性
10.关于边双连通分量,以下说法正确的是:
A.边双连通分量中一定没有割点
B.边双连通分量中一定没有割边
C.边双连通分量可以通过删除割点得到
D.边双连通分量比点双连通分量更大
11.Kosaraju算法的第一步是:
A.对原图进行DFS并记录完成时间
B.对逆图进行DFS
C.计算每个顶点的Low值
D.对图进行拓扑排序
12.关于点双连通分量,以下说法正确的是:
A.点双连通分量之间共享割点
B.点双连通分量可以通过删除割边得到
C.点双连通分量一定是边双连通分量
D.点双连通分量中任意两点间有且仅有一条路径
二、填空题(每题4分,共24分)
13.在Tarjan算法中,当________时,说明找到了一个强连通分量。
14.扩展欧几里得算法中,递归关系式y-=a/b*x的作用是________。
15.使用费马小定理求逆元的前提条件是模数m必须是________且a与m必须________。
16.矩阵快速幂算法中,矩阵乘法的时间复杂度是________。
17.容斥原理公式中,k个集合的交集前的系数是________。
18.在无向图中,边双连通分量可以通过________算法求得。
三、阅读程序题(每题15分,共30分)
19.阅读以下程序,回答问题:
#include
#include
#include
usingnamespacestd;
constintMAXN=100;
vectorG[MAXN],GT[MAXN];
intvisited[MAXN],order[MAXN],cnt;
vectorvectorscc;
voiddfs1(intu){
visited[u]=1;
for(intv:G[u]){
if(!visited[v])dfs1(v);
}
order[cnt++]=u;
}
voiddfs2(intu,vectorcomp){
visited[u]=1;
comp.push_back(u);
for(intv:GT[u]){
if(!visited[v])dfs2(v,comp);
}
}
voidkosaraju(intn){
cnt=0;
fill(visited,visited+n+1,0);
您可能关注的文档
- 2025年青少年软件编程(C_C++)等级考试(八级)模拟卷(十四).docx
- 2025年青少年软件编程(C_C++)等级考试(八级)模拟卷(十六).docx
- 2025年青少年软件编程(C_C++)等级考试(八级)模拟卷(十八).docx
- 2025年青少年软件编程(C_C++)等级考试(八级)模拟卷(十九).docx
- 2025年 青少年软件编程(C_C++)等级考试(九级)模拟卷(一).docx
- 2025年青少年软件编程(C_C++)等级考试(九级)模拟卷(二).docx
- 2025年青少年软件编程(C_C++)等级考试(九级)模拟卷(三).docx
- 2025年青少年软件编程(C_C++)等级考试(九级)模拟卷(四).docx
- 2025年青少年软件编程(C_C++)等级考试(九级)模拟卷(五).docx
- 2025年青少年软件编程(C_C++)等级考试(九级)模拟卷(六).docx
- 2025年青少年软件编程(C_C++)等级考试(九级)模拟卷(七).docx
- 2025年青少年软件编程(C_C++)等级考试(九级)模拟卷(八).docx
- 2025年青少年软件编程(C_C++)等级考试(九级)模拟卷(九).docx
原创力文档


文档评论(0)