2024年山东省信息学小学组(CSP-X)第一轮题解

2024年山东省信息学小学组(CSP-X)第一轮题解

  • 原题下载
  • 单项选择题
  • 阅读程序
    • 阅读程序 #1
      • 判断题
    • 阅读程序 #2
      • 判断题
      • 单选题
    • 阅读程序 #3
      • 判断题
      • 单选题
  • 完善程序
    • 消灭怪兽
    • 位运算操作

原题下载

CSP-X2024小学组(山东)第一轮试题以及答案

单项选择题

共 15 题,每题 2 分,共计 30 分;每题有且仅有一个正确选项。

  1. ( 2024 ) 10 + ( 2 F ) 16 (2024)_{10}+(2F)_{16} (2024)10+(2F)16的运算结果是( )。
  • A. ( 100000010110 ) 2 (100000010110)_2 (100000010110)2
  • B. ( 816 ) 16 (816)_{16} (816)16
  • C. ( 2071 ) 10 (2071)_{10} (2071)10
  • D. ( 4026 ) 8 (4026)_8 (4026)8

解析: ( 2 F ) 16 = 47 10 + 2024 10 = 2071 10 (2F)_{16}=47_{10}+2024_{10}=2071_{10} (2F)16=4710+202410=207110

  1. 执行完一下代码后,c的值是( )。
int a = 9, b = 6, c;
c = a / b + 0.5;
  • A. 1.5
  • B. 2
  • C. 2.0
  • D. 1

解析:c = a / b + 0.5;a,b,c都是int类型,因此a / b结果为1,加上0.5之后赋值给cc的值为1

  1. 将数组{7, 20, 4, 16, 88, 0, 55, 100}中的元素按从大到小的顺序排列,每次可以交换任意两个元素,最少需要交换( )次。
  • A. 4
  • B. 5
  • C. 6
  • D. 7

解析:需要将数组元素按从大到小的顺序排列,要求每次可以交换任意两个元素,可以使用选择排序的思想:

  • 1 1 1次将1007交换,得到{100, 20, 4, 16, 88, 0, 55, 7}
  • 2 2 2次将8820交换,得到{100, 88, 4, 16, 20, 0, 55, 7}
  • 3 3 3次将554交换,得到{100, 88, 55, 16, 20, 0, 4, 7}
  • 4 4 4次将2016交换,得到{100, 88, 55, 20, 16, 0, 4, 7}
  • 5 5 5次将70交换,得到{100, 88, 55, 20, 16, 7, 4, 0}

最少需要交换5次。
4. 若待排序对象序列在排序前已按其排序码递增顺序排序,则采用( )方法比较次数最少。

  • A. 直接插入排序
  • B. 快速排序
  • C. 归并排序
  • D. 直接选择排序

解析:若有 n n n个待排序对象,在排序前已按其排序码递增顺序排序,那么

  • 直接插入排序,需要比较 n n n
  • 快速排序,需要递归 l o g n logn logn层,在每一层将元素与基准值比较,进行分区操作,因此比较次数接近 n × l o g n n\times logn n×logn
  • 归并排序,需要递归 l o g n logn logn层,在每一层需要合并 n n n个元素,因此比较次数接近 n × l o g n n\times logn n×logn
  • 直接选择排序,每次需要选出最小值与当前位置上的元素进行交换,比较次数接近 n 2 n^2 n2
  1. 设有一个 100 100 100阶的对称矩阵保存在二维数组a[100][100],满足a[i][j]=a[j][i],如果采用压缩存储方式按行将矩阵的下三角部分的元素存入一维数组b[]中,a[0][0]存入b[0]中,则a[10][5]b[]中( )位置。
  • A. 50 50 50
  • B. 60 60 60
  • C. 51 51 51
  • D. 61 61 61

解析:如果将对称矩阵保存到二维数组a[100][100],并采用压缩存储方式按行将矩阵的下三角部分的元素存入一维数组b[]中,如下图所示:
在这里插入图片描述
从第 0 0 0行开始,每行存入到b[]数组的元素个数为 1 , 2 , 3... 1,2,3... 1,2,3...的等差数列,那么 0 ∼ 9 0\sim 9 09行一共存入 ( 1 + 10 ) ∗ 10 2 = 55 \frac{(1+10)*10}{2}=55 2(1+10)10=55个数,到a[10][5]还有 6 6 6个数,那么a[10][5]会存入b[60]

  1. 字符串abcabcabc有多少不同的非空子串
  • A. 24
  • B. 36
  • C. 45
  • D. 46

解析:

  • 长度为 1 1 1的非空子串有 3 3 3个,abc
  • 长度为 2 2 2的非空子串有 3 3 3个,abbcca
  • 长度为 3 3 3的非空子串有 3 3 3个,abcbcacab
  • 长度为 4 4 4的非空子串有 3 3 3个,abcabcabcabc
  • 长度为 5 5 5的非空子串有 3 3 3个,abcabbcabccabca
  • 长度为 6 6 6的非空子串有 3 3 3个,abcabcbcabcacabcab
  • 长度为 7 7 7的非空子串有 3 3 3个,abcabcabcabcabcabcabc
  • 长度为 8 8 8的非空子串有 2 2 2个,abcabcabbcabcabc
  • 长度为 9 9 9的非空子串有 1 1 1个,abcabcabc

字符串abcabcabc 3 × 7 + 2 + 1 = 24 3\times7+2+1=24 3×7+2+1=24不同的非空子串
7. 一个栈的输入顺序为 1 、 2 、 3 、 4 、 5 、 6 1、2、3、4、5、6 123456,下列序列中可能是栈的输出序列是( )?

  • A. 6 、 5 、 4 、 3 、 1 、 2 6、5、4、3、1、2 654312
  • B. 2 、 4 、 1 、 3 、 5 、 6 2、4、1、3、5、6 241356
  • C. 2 、 1 、 6 、 5 、 4 、 3 2、1、6、5、4、3 216543
  • D. 1 、 2 、 5 、 3 、 4 、 6 1、2、5、3、4、6

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

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

相关文章

SW - 用装配图的方式组合多个子零件然后转换成为零件,可维护性好

文章目录SW - 用装配图的方式组合多个子零件然后转换成为零件,可维护性好概述笔记例子将装配图另存为零件将零件图中的多个实体组合为一个实体的特征备注ENDSW - 用装配图的方式组合多个子零件然后转换成为零件,可维护性好 概述 以前画机械零件&#x…

PhotoshopImageGenerator:基于Photoshop的自动化图像数据集生成工具

整体逻辑与设计思路 PhotoshopImageGenerator是一个基于Python和Win32COM的自动化工具,通过控制Adobe Photoshop CC 2019创建多样化的图像数据集。其核心设计思路是通过程序化调用Photoshop的图像编辑能力,为基础图像添加随机元素(图片、文本、形状)和效果,快速生成大量变…

macos自动安装emsdk4.0.13脚本

1.替换文件 emsdk #!/bin/sh # Copyright 2019 The Emscripten Authors. All rights reserved. # Emscripten is available under two separate licenses, the MIT license and the # University of Illinois/NCSA Open Source License. Both these licenses can be # foun…

c++ Effective c++ 条款5

class MyClass { public:MyClass(int& ref, const int c_val) : myRef(ref), myConstVal(c_val) {}// 明确删除拷贝操作MyClass(const MyClass&) delete;MyClass& operator(const MyClass&) delete;private:int& myRef; // 引用成员const int myCo…

如何使用 Xshell 8 连接到一台 CentOS 7 电脑(服务器)

什么是 Xshell? Xshell 是一款功能强大的、适用于 Windows 平台的终端模拟器。它支持 SSH (Secure Shell)、SFTP、TELNET、RLOGIN 和 SERIAL 等多种网络协议,让用户能够安全地连接和管理远程服务器。 对于开发者、系统管理员和网络工程师来说&#xff…

CSS scale函数详解

目录 基本语法 核心特性 常用场景示例 1. 等比例缩放(X 轴和 Y 轴相同) 2. 非等比例缩放(X 轴和 Y 轴不同) 3. 翻转并缩放 4. 配合过渡动画实现交互效果 5. 图片悬停缩放效果 6. 缩放原点调整 与其他变换组合使用 注意…

【MATLAB代码】基于EKF的二维组合导航仿真代码,状态量为位置、速度、航向角与IMU偏置,观测量为XY轴的位置和速度,附完整代码

8维状态量(2维位置、2维速度、航向角、航向角偏置、2维加速度计偏置)+4维观测量(2维位置、2维速度)。 订阅专栏后,可直接查看源代码,粘贴到MATLAB空脚本中即可直接运行、得到结果 文章目录 运行结果 MATLAB源代码 程序详解 📘 程序概述 状态预测(状态转移函数) 状态雅…

OpenCV 图像轮廓检测

目录 一、轮廓检测基础概念 二、核心 API 详解:cv2.findContours () 参数说明: 返回值说明: 三、轮廓检测实战步骤 1. 图像预处理(灰度化与二值化) 2. 查找轮廓 3. 绘制轮廓 四、轮廓的常用属性与操作 1. 轮…

【图论】 Graph.jl 概览

文章目录安装基础使用基本操作全局图的指标顶点性质边性质读写图按照 .lgz 格式存储图数据(压缩格式)按照 .lg 格式存储图数据(非压缩格式)图的绘制TikzGraphs.jl Latex 论文风格GraphPlot.jl 通常与 Compose.jl 一起使用SGtSNEpi…

[java] 控制三个线程按顺序交替输出数字123123…

控制三个线程按顺序交替输出数字123123… synchronized(配合专用锁对象) 通过共享锁和 volatile 变量控制执行顺序,每个线程按指定顺序打印指定内容,确保输出序列如 “123123…”。使用 synchronized 和 wait/notifyAll 实现线程间…

[C#]winform基于yolov8-seg实现的指甲分割实现源码

【测试环境】 vs2019 net framework4.7.2 onnxruntime1.16.3 opencvsharp 注意源码运行在CPU上不支持GPU运行,由于net framework限制GPU会很慢因此没有GPU版本提供。 【运行步骤】 打开sln项目 选择x64 debug运行即可 如需要再x64 release运行可以将x64 debu…

数据结构——线性表(链表,力扣中等篇,增删查改)

文章目录一、增删查改1.1增(插入节点)1.1.1两数后插入公约数1.1.2循环有序链表的插入1.2删(移除节点)1.2.1删除已知的node节点【交换val值】1.2.2移除数组中已存在的节点【unordered_set】1.2.3删除和为0的节点【前缀和】1.3改&am…

【Android】OkHttp发起GET请求 POST请求

三三要成为安卓糕手 一:OkHttp介绍 OkHttp 是一个开源的、强大且高效的 HTTP 客户端库,主要用于在 Java后端和Android 项目中进行网络请求。 //在gradle中添加依赖 com.squareup.okhttp3:okhttp:4.12.0二:GET请求/*** 使用OkHttp发起get请求*…

[Mysql数据库] 知识点总结8

1. 请详细描述在复制拓扑中参与复制的线程类型以及各自所承担的功能。答:当从属服务器连接到主服务器时,在主服务器上会创建 Binlog 转储线程,在从属服务器上会默 认创建 I/O 线程和 SQL 线程。- Binlog 转储线程用于从二进制日志读取事件并将…

250829-Gitlab数据备份与恢复

下面给你一份可落地的迁移方案,保证 GitLab 的数据和配置完整迁移到服务器 B。你当前用的是 GitLab Omnibus(docker 版),数据都在你映射的 3 个目录里(/etc/gitlab, /var/log/gitlab, /var/opt/gitlab)&…

吴恩达机器学习作业十一:异常检测

数据集在作业一异常检测异常检测就是发现与大部分对象不同的对象,其实就是发现离群点。异常检测有时也称偏差检测。异常对象是相对罕见的。用数据集建立概率模型p ( x ),如果新的测试数据在这个模型上小于某个阈值,则说它极大可能为异常点算法…

2000w 的数据量,mysql要进行几次IO操作,为什么

在 MySQL 中,2000 万数据量的表在进行查询时所需的 ​​IO 操作次数​​主要取决于 ​​索引结构(B树层级)​​、​​查询类型​​和 ​​数据分布特征​​。以下是具体分析:一、B树层级与 IO 次数的关系InnoDB 引擎通过 B树索引管…

【代码随想录day 22】 力扣 39. 组合总和

视频讲解:https://www.bilibili.com/video/BV1KT4y1M7HJ/?vd_sourcea935eaede74a204ec74fd041b917810c 文档讲解:https://programmercarl.com/0039.%E7%BB%84%E5%90%88%E6%80%BB%E5%92%8C.html#%E6%80%9D%E8%B7%AF 力扣题目:https://leetcod…

DrissionPage 实战:动态 IP 代理与百度翻译 API 数据抓取

本文将详细介绍如何使用 DrissionPage 实现动态 IP 代理访问,并结合百度翻译 API 进行数据抓取与处理。一、技术选型与架构设计1.1 为什么选择 DrissionPage?DrissionPage 作为新一代网络自动化工具,相比传统 Selenium Requests 方案具有显著…

策略模式:灵活应对算法动态切换

引言 在软件开发中,我们常常会遇到需要在运行时动态选择和切换算法或行为的场景。例如,电商系统中的多种支付方式、游戏中的不同难度设置,或是计算器中的各种运算符。传统的方法可能会使用复杂的条件判断语句(如if-else或switch-c…