CCF编程能力等级认证GESP—C++7级—20240629

news2024/9/24 16:29:21

CCF编程能力等级认证GESP—C++7级—20240629

  • 单选题(每题 2 分,共 30 分)
  • 判断题(每题 2 分,共 20 分)
  • 编程题 (每题 25 分,共 50 分)
    • 黑白翻转
    • 区间乘积

单选题(每题 2 分,共 30 分)

1、下列C++代码的输出结果是( )。

#include <iostream>
#include <cmath>
using namespace std;
int main() {
    cout << sin(3.1415926 / 2);
    return 0;
}
A. 0
B. 1
C. 0.5
D. 0.7071

正确答案:B

2、对于如下图的二叉树,说法正确的是( )。
在这里插入图片描述

A. 先序遍历是 132 。
B. 中序遍历是 123 。
C. 后序遍历是 312 。
D. 先序遍历和后序遍历正好是相反的。

正确答案:D

3、已知两个序列s1={1, 3, 4, 5, 6, 7, 7, 8, 1} 、s2={3, 5, 7, 4, 8, 2, 9, 5, 1}, 则它们的最长公共子序列是( )

A. {3,5,7,8,1} 
B. {3,4,5,7,8} 
C. {5,7,8}
D. {3,5,7,9,1}

正确答案:A

4、关于序列 {2,7,1,5,6,4,3,8,9} ,以下说法错误的是( )。

A. {2,5,6,8,9} 是它的最长上升子序列
B. {1,5,6,8,9} 是它的最长上升子序列
C. {7,5,4,3} 是它的最长下降子序列
D. {1,5,6,8,9} 是它的唯一最长上升子序列

正确答案:D

5、关于图的深度优先搜索和广度优先搜索,下列说法错误的是( )。

A. 二叉树是也是一种图。
B. 二叉树的前序遍历和后序遍历都是深度优先搜索的一种。 
C. 深度优先搜索可以从任意根节点开始。
D. 二叉树的后序遍历也是广度优先搜索的一种。

正确答案:D

6、对于如下二叉树,下面访问顺序说法错误的是( )。
在这里插入图片描述

A. HDEBFIGCA不是它的后序遍历序列 
B. ABCDEFGHI是它的广度优先遍历序列 
C. ABDHECFGI是它的深度优先遍历序列 
D. ABDHECFGI是它的先序遍历序列

正确答案:A

7、以下哪个方案不能合理解决或缓解哈希表冲突( )。

A. 丢弃发生冲突的新元素。
B. 在每个哈希表项处,使用不同的哈希函数再建立一个哈希表,管理该表项的冲突元素。 
C. 在每个哈希表项处,建立二叉排序树,管理该表项的冲突元素。
D. 使用不同的哈希函数建立额外的哈希表,用来管理所有发生冲突的元素。

正确答案:A

8、在C++中,关于运算符&,下面说法正确的是( )。

A. 2 & 3的结果是true
B. 011 & 111 的结果是 3
C. 3 & 6的结果是2
D. 110 & 101 的结果是 4

正确答案:C

9、下面关于图的说法正确的是( )。

A. 在无向图中,环是指至少包含三个不同顶点,并且第一个顶点和最后一个顶点是相同的路径。 
B. 在有向图中,环是指一个顶点经过至少另一个顶点到自身的路径。
C. 在有向图中,如果任意两个顶点之间都存在一条边,则这个图一定是强连通图。
D. 在有向图中,所有顶点的入度和出度的总和就是图的边数的两倍。```
>正确答案:D



__10、图的存储和遍历算法,下面说法错误的是( )。__
```cpp
A. 图的深度优先搜索和广度优先搜索对有向图和无向图都适用。 
B. 图的深度优先搜索和二叉树的先序遍历道理是不一样的。
C. 图的深度优先搜索需要借助栈来完成。
D. 邻接表中,顶点vi对应链表中的边结点数目正好是顶点vi的度。

正确答案:B

11、如下图所示的邻接表结构,表示的是下列哪个选项中的图?
在这里插入图片描述

A.
在这里插入图片描述

B.
在这里插入图片描述

C.
在这里插入图片描述

D.
在这里插入图片描述

正确答案:C

12、如下图所示的邻接矩阵(inf表示无穷大),表示的是下列哪个选项中的图?
在这里插入图片描述

A.
在这里插入图片描述

B.
在这里插入图片描述

C.
在这里插入图片描述

D.
在这里插入图片描述

正确答案:A

13、下面程序的输出为( )。

#include <iostream>
using namespace std;
int fib(int n){
    if (n <= 1)
        return n;
    return fib(n - 1) + fib(n - 2);
}
int main(){
    cout << fib(6) << endl;
    return 0;
}
A. 5
B. 8
C. 13
D. 无法正常结束。

正确答案:B

14、下面 count_triple 函数的时间复杂度为( )。

int count_triple(int n) {
    int cnt = 0;
    for (int a = 1; a <= n; a++)
        for (int b = a; a + b <= n; b++) {
            int c = sqrt(a * a + b * b); 
            if(a + b + c > n)
                break; 
            if(a * a + b * b == c * c)
                cnt++; 
        }
    return cnt; 
}

A. O ( n ) O(n) O(n)
B. O ( n 2 ) O(n^2) O(n2)
C. O ( n 3 ) O(n^3) O(n3)
D. O ( n 4 ) O(n^4) O(n4)

正确答案:B

15、下列选项中,哪个可能是下图的深度优先遍历序列( )。
在这里插入图片描述

A. 1, 3, 7, 5, 4, 2, 6, 8, 9 
B. 9, 4, 2, 1, 3, 5, 7, 6, 8 
C. 1, 3, 4, 2, 7, 6, 8, 9, 5 
D. 9, 7, 6, 8, 4, 2, 1, 5, 3

正确答案:C

判断题(每题 2 分,共 20 分)

1、C++语言中,表达式6 & 5的结果类型为int、值为1。

正确答案:错误

2、冒泡排序是稳定的排序算法。

正确答案:正确

3、唯一分解定理(算术基本定理)指出,每个大于1的自然数都可以唯一地分解成若干个素数的乘积。因此, 我们可以很容易的对给定的自然数 n 进行质因数分解,时间复杂度仅为O(log(n)) 。

正确答案:错误

4、C++语言中,可以为同一个类定义多个构造函数。

正确答案:正确

5、使用 math.h 或 cmath 头文件中的对数函数,表达式 log(128) 的结果类型为 double 、值约为 7.0 。

正确答案:错误

6、一颗 N 层的二叉树,至少有 2 N − 1 2^{N-1} 2N1个节点。

正确答案:错误

7、非连通图不能使用广度优先搜索算法进行遍历。

正确答案:错误

8、现使用有 N 个表项的哈希表,从 M 个元素中进行查找。该哈希表为解决哈希函数冲突,为每个表项处建立单 链表存储冲突元素。其查找操作的最坏情况时间复杂度为O(M)。

正确答案:正确

9、动态规划有递推实现和递归实现,对于很多问题,通过记录子问题的解,两种实现的时间复杂度是相同的。

正确答案:正确

10、泛洪算法的递归方法容易造成溢出,因此大的二维地图算法中,一般不用递归方法。

正确答案:正确

编程题 (每题 25 分,共 50 分)

黑白翻转

【问题描述】
小杨有一棵包含n个节点的树,这棵树上的任意一个节点要么是白色,要么是黑色。小杨认为一棵树是美丽树当且
仅当在删除所有白色节点之后,剩余节点仍然组成一棵树。
小杨每次操作可以选择一个白色节点将它的颜色变为黑色,他想知道自己最少要执行多少次操作可以使得这棵树变
为美丽树。
【输入描述】
第一行包含一个正整数n,代表树的节点数。
第二行包含n个非负整数 a 1 , a 2 , . . . , a n a_1, a_2,...,a_n a1,a2,...,an,其中如果 a i = 0 a_i = 0 ai=0,则节点i的颜色为白色,否则为黑色。
之后n - 1行,每行包含两个正整数 x i , y i x_i, y_i xi,yi,代表存在一条连接节点 x i x_i xi y i y_i yi的边。
【输出描述】
输出一个整数,代表最少执行的操作次数。
【样例输入 1】
5
0 1 0 1 0
1 2
1 3
3 4
3 5
【样例输出 1】
2
【样例解释】
将节点1和3变为黑色即可使这棵树变为美丽树,此时删除白色节点5,剩余黑色节点仍然组成一棵树。
【数据范围】

子任务编号数据点占比n a i a_i ai特殊条件
130% < = 1 0 5 <= 10^5 <=105 0 < = a i < = 1 0 <= a_i <= 1 0<=ai<=1树的形态为一条链
230% < = 1 0 5 <= 10^5 <=105 0 < = a i < = 1 0 <= a_i <= 1 0<=ai<=1只有两个节点颜色为黑色
340% < = 1 0 5 <= 10^5 <=105 0 < = a i < = 1 0 <= a_i <= 1 0<=ai<=1

对于全部数据,保证有 1 < = n < = 1 0 5 , 0 < = a i < = 1 1 <= n <= 10^5, 0 <= a_i <= 1 1<=n<=105,0<=ai<=1

区间乘积

【问题描述】
小杨有一个包含 个正整数的序列 A = [ a 1 , a 2 , . . . , a n ] A = [a_1, a_2, ..., a_n] A=[a1,a2,...,an]
小杨想知道有多少对 < l , r > ( 1 < = l < = r < = n ) <l, r> (1 <= l <= r <= n) <l,r>(1<=l<=r<=n)满足 a l ∗ a l + 1 ∗ . . . ∗ a r a_l * a_{l + 1} * ... *a_r alal+1...ar为完全平方数。
一个正整数x为完全平方数当且仅当存在一个正整数y使得x = y * y。
【输入描述】
第一行包含一个正整数n,代表正整数个数。
第二行包含n个正整数 a 1 , a 2 , . . . , a n a_1, a_2, ..., a_n a1,a2,...,an, 代表序列A。
【输出描述】
输出一个整数,代表满足要求的 < l , r > <l,r> <l,r>数量.
【样例输入 1】
5
3 2 4 3 2
【样例输出 1】
2
【样例解释】
满足条件的 < l , r > <l,r> <l,r> < 3 , 3 > <3,3> <3,3> < 1 , 5 > <1,5> <1,5>
【数据范围】

子任务编号数据点占比n a i a_i ai
120% < = 1 0 5 <= 10^5 <=105 1 < = a i < = 2 1 <= a_i <= 2 1<=ai<=2
240% < = 100 <= 100 <=100 1 < = a i < = 30 1 <= a_i <= 30 1<=ai<=30
340% < = 1 0 5 <= 10^5 <=105 1 < = a i < = 30 1 <= a_i <= 30 1<=ai<=30

对于全部数据,保证有 1 < = n < = 1 0 5 , 0 < = a i < = 30 1 <= n <= 10^5, 0 <= a_i <= 30 1<=n<=105,0<=ai<=30

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1989443.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【鸿蒙开发基础学习】UIAbility 组件生命周期

UIAbility 组件生命周期 概述 当用户打开、切换和返回到对应应用时&#xff0c;应用中的 UIAbility 实例会在其生命周期的不同状态之间转换。UIAbility 类提供了一系列回调&#xff0c;通过这些回调可以知道当前 UIAbility 实例的某个状态发生改变&#xff0c;会经过 UIAbili…

DeDeCMS

DeDeCMS 环境部署 同意协议 环境检测 参数配置 漏洞复现 姿势⼀&#xff1a;通过⽂件管理器上传WebShell #前台 http://192.168.4.139/dedecms/index.php?upcache1 #后台 http://192.168.4.139/dedecms/dede/ #信息 username:admin password:admin 上传文件 成功上传 …

如何在Chrome、Edge、360、Firefox等浏览器查看网站SSL证书信息?

在如今的网络环境中&#xff0c;保障网络安全、数据安全尤其重要&#xff0c;市面上大部分网站都部署了SSL证书以实现HTTPS加密保护数据传输安全以及验证网站身份&#xff0c;确保网站安全可信。那么如何查看网站的SSL证书信息&#xff1f;接下来&#xff0c;我们将详细介绍如何…

Java零基础之多线程篇:讲解死锁和资源管理

哈喽&#xff0c;各位小伙伴们&#xff0c;你们好呀&#xff0c;我是喵手。运营社区&#xff1a;C站/掘金/腾讯云&#xff1b;欢迎大家常来逛逛 今天我要给大家分享一些自己日常学习到的一些知识点&#xff0c;并以文字的形式跟大家一起交流&#xff0c;互相学习&#xff0c;一…

Qt 跨平台支持任务栏进度条以及自绘消息通知显示

一.效果图 win效果图 mac效果图 二.测试demo地址&#xff1a; testwindowbar: 跨平台的任务栏进度条

语言模型-预训练模型(三)

预训练-BERT 传统方法与预训练方法的比较预训练方式 --BERT训练任务模型结构BERT结构-EmbeddingBERT结构-EncoderBERT结构-self-attention 传统方法与预训练方法的比较 思想解读&#xff1a; 预训练的概念就和我们人读书和工作一样&#xff1b;先是通过基础教育到大学毕业&…

Gradio之文字输入输出

Gradio 是一个简单直观的交互界面的SDK组件。 在python 环境中安装使用pip install gradio 然后运行以下代码&#xff0c;就能在浏览器中展示 # 输入name字符串&#xff0c;输出Hello {name}!字符串 def greet(name):return "Hello " name "!"demo gr.I…

Python统计单词列表

文章目录 需求分析demo 需求 给定一组字符串words和每行能显示的最大字符数max_length&#xff0c;计算需要多少行才能完整显示所有的单词。 分析 思路很简单&#xff0c;从给定的字符串中按空格分割单词列表&#xff0c;计算一行能显示的单词数&#xff0c;将其添加到list中…

全国产飞腾D2000/8 ITX主板+银河麒麟Kylin/UOS 操作系统,应用于工业一体机, 工业平板、加固IPAD

ITX-F601一体机主板产品规格书 产品概述 ITX-F601是一款高性能一体机主板&#xff0c;基于国产飞腾处理器D2000/8 核处理器设计研发&#xff0c;低海岸线IO 设计&#xff0c;可用于工业一体机、工业平板等&#xff0c;合理摆放CPU&#xff0c;MINI-PCIE&#xff0c;M.2 槽位&…

UKP3D9.3版本导出报表文件

UKP3D9.3&#xff08;8.4&#xff09;号安装包&#xff0c;支持输出节点属性的文本报表。这个功能的实用性很强&#xff0c;适用于批量修改数据。 命令&#xff1a;TXTREPORT

百元护眼台灯有什么推荐?松下、飞利浦、书客看哪个更胜一筹

当前&#xff0c;近视问题在人群中的蔓延趋势愈发显著&#xff0c;几乎成为一种普遍现象。据最新出炉的2024年度统计数据显示&#xff0c;我国儿童及青少年群体的近视率已飙升至触目惊心的52.7%&#xff0c;这一数字不仅凸显了近视问题的严峻态势&#xff0c;更在社会上激起了广…

Java常见面试题-06-web

文章目录 TCP 与 UDP 区别&#xff1f;什么是 HTTP 协议&#xff1f;TCP 的三次握手HTTP 中重定向和请求转发的区别&#xff1f;Get 和 Post 的区别&#xff1f;cookie 和 session 的区别&#xff1f;介绍一下Ajax以及其优势axios 是什么&#xff1f;怎样使用它&#xff1f;怎么…

ICMP(Ping)功能原理及其C++实现简介

ICMP(Ping)功能原理及其应用简介 一、 Ping功能简介 1、 原始套接字(Raw Socket) 原始套接字&#xff08;‌Raw Socket&#xff09;‌是一种特殊的网络编程接口&#xff0c;‌它允许直接接收和发送网络层的数据包&#xff0c;‌而不是通过传输层。‌这种套接字可以接收本机网…

推荐 3个实用且完全免费的在线工具,每天都会用到,无需登录打开即用

100font 100font是一个专业的免费商用字体下载网站&#xff0c;专注于收集、整理和分享各种免费无版权的商用字体。用户可以在这个平台上找到并下载简体中文、繁体中文、英文、日文、韩文等多种语言类型的字体。 该网站的特点包括清晰的分类和直观的下载流程&#xff0c;用户可…

金字塔原理帮助你理清思路,提升职场表达力

金字塔原理帮助你理清思路 1分钟理清思路&#xff0c;提升职场表达力 金字塔原理概述 原则 解释 模型 结论先行 中心思想和结论只有一个&#xff0c;放在最前面 SCQA模型 以上统下 任一层的思想必须是下一层次思想的概括 演绎推理 归纳推理 归类分组 每组中的思想必…

【Linux网络】其他协议和技术:DNS、ICMP、NAT

本篇博客补充了 TCP/IP 分层模型中&#xff0c;应用层的 DNS 协议、网络层的 ICMP 协议、网络层的 NAT 技术&#xff0c;旨在让读者更加深入理解网络协议栈的设计和网络编程。 目录 一、DNS 协议 1&#xff09;技术背景 2&#xff09;域名与域名解析 二、ICMP 协议 1&…

Webstorm的下载与安装

Webstorm的下载 1 在浏览器的地址栏输入https://www.jetbrains.com/webstorm/&#xff0c;进入主页面 2 点击右上角的Download按钮&#xff0c;进入下载页面&#xff0c;如图所示 Webstorm的安装 按步骤逐步安装即可

tomcat文件上传漏洞练习

1、靶场账号注册 vulfocus 注册后邮箱中点击激活 2、首页选择并开启靶场 复制映射的ip和端口 在浏览器输入ip和端口 改成put并把1.jsp中内容复制进去 3打开哥斯拉&#xff0c;连接上面的网址

TCP协议程序设计

文章目录 前言一、TCP协议程序是什么&#xff1f;二、使用步骤 1.服务器端与客户端2.实操展示总结 前言 TCP网络程序设计是指利用Socket类编写通信程序。利用TCP协议进行通讯的两个应用程序是有主次之分的&#xff0c;一个称为服务器程序&#xff0c;另一个称为客户机程序&…

Go语言编程大全,web微服务数据库十大专题精讲

本课程主要从数据结构、Go Module 依赖管理、IO编程、数据库编程、消息队列、加密技术与网络安全、爬虫与反爬虫、web开发、微服务通用技术、Kitex框架等方面讲解~ 链接&#xff1a;https://pan.quark.cn/s/d65337a0e60d