当前位置: 首页 > news >正文

【2023年全国青少年信息素养大赛智能算法挑战赛复赛真题卷】

目录

2023全国青少年信息素养大赛智能算法挑战赛初中组复赛真题

2023全国⻘少年信息素养⼤赛智能算法挑战复赛⼩学组真题


2023全国青少年信息素养大赛智能算法挑战赛初中组复赛真题

1. 修复机器人的对话词库错误

【题目描述】

基于人工智能技术的智能陪伴机器人的语言词库被黑客的病毒感染了,感染方 式是在单词中的某个字母被增加了两次,例如“hello”变成了“heeello” 。空格 字符被替换为长度不固定的数字乱码,请修复它。

【输入格式】

输入一行字符串 (字符串中无空格) 。这一行是被感染的字符串。

【输出格式】

输出一行对应的正确字符串。

【样例输入】(测试数据不包含本样例)

Good24565morrrning

【样例输出】

Good morning

2. 定制架子问题

【题目描述】

李莳花要做一个架子,把她喜欢的摆件叠放起来,她的每个摆件的位置顺序是固 定的。这个架子的宽度是 W,每层排放的摆件不能超过这个宽度,每层架子的高度不 能低于最高的摆件的高度。假设,给出排列好的每个摆件的宽度 Wi ,和高度 Hi ,请 计算需要最少多高的架子。

【输入格式】

输入的第一行有 2 个数字,一个是摆件的个数n,和架子的宽度 W。 以下摆件个数 n 行,每行的第一个数是摆件的宽度 Wi 和高度 Hi。

【输出格式】

输出放置摆件架子的最低高度。

【样例输入】(测试数据不包含本样例)

5 5

2 1

1 2

1 3

2 3

2 2

【样例输出】

5

3. 输出多进制数

【题目描述】

输入一个小于 20 的正整数n,要求按从小到大的顺序输出所有的 n 位 m 进制数, 每个数占一行。

【输入格式】

输入一个小于 20 的正整数n,和一个小于 10 的正整数m。

【输出格式】

按从小到大的顺序输出所有的 n 位 m 进制数,每个数占一行。

【样例输入】(测试数据不包含本样例)

3  2

【样例输出】

000

001

010

011

100

101

110

111

4. 在 AI 下棋程序中,计算猫抓老鼠游戏的概率

【题目描述】

有这样一个游戏:在一个 n*n 的格子棋盘里,n 是奇数;有两种棋子,一个是只 能横向移动的棋子猫,一个是可以上下左右移动的棋子老鼠。假设老鼠在棋盘的正 中央,第一步老鼠将进行上下左右的随机移动。棋子猫在从棋盘的中间行的最左边 向棋盘的最右边移动,棋子猫每次移动只能是从左到右移动一步,第一步是猫位于 棋盘的中间行的最左边格子。请问:在猫移动到棋盘外面前,会有多大概率抓到老 鼠?

【输入格式】

输入一个大于 1 的奇数n,表示棋盘的大小。

【输出格式】

棋子猫抓到棋子老鼠的概率。(小数四舍五入保留4 位有效数字) 【样例输入】(测试数据不包含本样例)

3

【样例输出】

0.6667

以下是针对您提供的四个题目的C++解决方案:

### 题目 1:修复机器人的对话词库错误

#include <iostream>#include <string>#include <cctype>int main() {std::string input;std::cin >> input;std::string output = "";for (char ch : input) {if (std::isalpha(ch)) {if (ch == 'l' || ch == 's') {output += 'l';}output += ch;} else if (isdigit(ch)) {int len = ch - '0';for (int i = 0; i < len; ++i) {output += '0' + (input[i] - '0');}}}std::cout << output << std::endl;return 0;}

题目 2:定制架子问题

#include <iostream>#include <vector>#include <algorithm>int main() {int n, W;std::cin >> n >> W;std::vector<std::pair<int, int>> pieces(n);for (int i = 0; i < n; ++i) {std::cin >> pieces[i].second >> pieces[i].first;}std::sort(pieces.begin(), pieces.end());int maxHeight = 0;int currentHeight = 0;for (const auto &piece : pieces) {if (currentHeight + piece.first <= maxHeight) {maxHeight = std::max(maxHeight, currentHeight + piece.first);} else {maxHeight = std::max(maxHeight, piece.first);currentHeight = piece.first;}}std::cout << maxHeight << std::endl;return 0;}

题目 3:输出多进制数

#include <iostream>#include <string>#include <cmath>void printNumber(int n, int m) {std::string digits = "0123456789";std::cout << digits.substr(0, n);for (int i = 1; i < m; ++i) {std::string num = "";for (int j = 0; j < n; ++j) {num += digits.substr((i + j) % m, 1);}std::cout << num << std::endl;}}int main() {int n, m;std::cin >> n >> m;printNumber(n, m);return 0;}

 题目 4:在 AI 下棋程序中,计算猫抓老鼠游戏的概率

#include <iostream>#include <cmath>double calculateProbability(int n) {// n is odd,老鼠在棋盘的正中央,猫从中间行的最左边开始int middle = n / 2; // 棋盘的中间行int half = (n - 1) / 2; // 棋盘的一半double catMoves = half; // 猫需要移动的步数double totalMoves = pow(2, half + 1) - 1; // 老鼠可能的移动步数return catMoves / totalMoves;}int main() {int n;std::cin >> n;std::cout.precision(4);std::cout << std::fixed << calculateProbability(n) << std::endl;return 0;}

2023全国少年信息素养赛智能算法挑战复赛学组真题

1.

【题描述】

强在河边捡了 2 块漂亮的头,他想再捡两,让这 4 头的质量正好为 30  ,并且新捡的 两块头的质量是介于前两块头的质量之间的数字,请编程 输出第 3 块和第 4 头的质量 。注: 每个头的重量都是整数,如果找不到合适 头,则输出 0 0

【输格式】

⼊  2 个数,数与数之间以空格间隔,表示 2 头的质量。

【输出格式】

输出表示第 3 4 头的质量的所有可能结果,每块头质量的数字空格隔开 。多组结果时,按第 3头质量从排序分输出。

【样例输 (测试数据不包含本样例)

1 11

【样例输出】

810

9 9

2.判断数字出现了

【题描述】

给定一个正整数n ,判断从 1 到这个数本身的所有数中,一共出现了多少次数字

k 。【输格式】

 1  ,包括一个正整数 n 和一个正整数 k (0<n<32767 0<k<10) 【输出格式】

输出共 1  ,一个整数,表示 1 n 之间的所有数 (包括n) ,一共出现了k 。【样例输 (测试数 据不包含本样例)

【样例输出】

2

3.滑雪板打包问题

【题描述】

一家新开业的滑雪场,需要采购不同规格的滑雪板,每个滑雪板的  度是不固定的,现在需要把排列好 的滑雪板⽤⽊板做成箱封装好进快递,每次快递的总重 量是有限制的,不能超过重量 G 。只要每  次打包的重量不超过 G ,多个滑雪板可以摞 放在一起,使与最  滑雪板  度相同的两个板进   。假设,给出排列好的 每个滑雪板的重量 Gi  ,和  度 Li ,请计算需要最少多  板才能将所有 的滑雪板 把包好。

【输格式】

的第一有两个数字,一个是滑雪板的个数,一个是包裹总重量  以下滑雪板个数 ,每的第一 个数是滑雪板的重量 Gi    Li

【输出格式】

输出需要最少的板的总  度 。注:每次打包需要 2 板。 【样例输 (测试数据不包含本样例)

5 5

2 1

1 2

1 3

2 3

2 2

【样例输出】

10

4.统计考试成绩

【题描述】

期末考试结束了,师要统计班的考试成绩分布, 已知每个同学的考试成绩为在 0  100 分之 间的整数 ,设计一个程序 ,输每个同学的成绩,计算出在 平均成绩 (成绩平均值向下取整) 之上的 (于等于平均成绩) 和在平均成绩之下 (于平均成绩) 的同学的数。

【输格式】

第一⾏  n 为学成绩个数,0<n<50

⼆⾏  由空格隔开的每个同学的成绩,为 1  100 间的整数 。【输出格式】

两个整数, 由空格隔开,为平均分以上数和平均分以下 。【样例输 (测试数据不包含本样例)

                                      

12

100 80 93 66 73 50 96 100 84 47 97 71

【样例输出】

5 7

相关文章:

【2023年全国青少年信息素养大赛智能算法挑战赛复赛真题卷】

目录 2023全国青少年信息素养大赛智能算法挑战赛初中组复赛真题 2023全国⻘少年信息素养⼤赛智能算法挑战复赛⼩学组真题 2023全国青少年信息素养大赛智能算法挑战赛初中组复赛真题 1. 修复机器人的对话词库错误 【题目描述】 基于人工智能技术的智能陪伴机器人的语言词库被…...

Android系统揭秘(一)-Activity启动流程(上)

public ActivityResult execStartActivity( Context who, IBinder contextThread, IBinder token, Activity target, Intent intent, int requestCode, Bundle options) { IApplicationThread whoThread (IApplicationThread) contextThread; … try { … int result …...

使用Java实现哈夫曼编码

前言 哈夫曼编码是一种经典的无损数据压缩算法&#xff0c;它通过赋予出现频率较高的字符较短的编码&#xff0c;出现频率较低的字符较长的编码&#xff0c;从而实现压缩效果。这篇博客将详细讲解如何使用Java实现哈夫曼编码&#xff0c;包括哈夫曼编码的原理、具体实现步骤以…...

IDEA、PyCharm等基于IntelliJ平台的IDE汉化方式

PyCharm 或者 IDEA 等编辑器是比较常用的&#xff0c;默认是英文界面&#xff0c;有些同学用着不方便&#xff0c;想要汉化版本的&#xff0c;但官方没有这个设置项&#xff0c;不过可以通过插件的方式进行设置。 方式1&#xff1a;插件安装 1、打开设置 File->Settings&a…...

visual studio 创建c++项目

目录 环境准备&#xff1a;安装 visual studiovisual studio 创建c项目Tips&#xff1a;新建cpp文件注释与取消注释代码 其他初学者使用Visual Studio开发C和C时常遇到的3个坑 环境准备&#xff1a;安装 visual studio 官网&#xff1a;https://visualstudio.microsoft.com/zh…...

MGV电源维修KUKA机器人电源模块PH2003-4840

MGV电源维修 库卡电源模块维修 机器人电源模块维修 库卡控制器维修 KUKA电源维修 库卡机器人KUKA主机维修 KUKA驱动器模块维修 机械行业维修&#xff1a;西门子系统、法那克系统、沙迪克、FIDIA、天田、阿玛达、友嘉、大宇系统&#xff1b;数控冲床、剪板机、折弯机等品牌数控…...

设置浏览器互不干扰

目录 一、查看浏览器文件路径 二、 其他盘新建文件夹Cache 三、以管理员运行CMD 四、执行命令 一、查看浏览器文件路径 chrome://version/ 二、 其他盘新建文件夹Cache D:\chrome\Cache 三、以管理员运行CMD 四、执行命令 Mklink /d "C:\Users\Lenovo\AppData\Loca…...

kafka操作命令详解

目录 1、集群运维命令 1.1、集群启停命令 1.3、集群迁移命令 1.4、权限管理命令 1.4.1、权限参数介绍 1.4.2、增加权限命令 1.4.3、移出权限命令 1.4.4、查看所有topic权限命令 1.4.5、查看某个topic权限命令 2、生产者命令 2.1、创建topic命令 2.2、删除topic命令 …...

graalvm jdk和openjdk

下载地址:https://github.com/graalvm/graalvm-ce-builds/releases 官网: https://www.graalvm.org...

docker基础使用教程

1.准备工作 例子&#xff1a;工程在docker_test 生成requirements.txt文件命令&#xff1a;&#xff08;使用参考链接2&#xff09; pip list --formatfreeze > requirements.txt 参考链接1&#xff1a; 安装pipreqs可能比较困难 python 项目自动生成环境配置文件require…...

计算机网络 交换机的安全配置

一、理论知识 1.交换机端口安全功能介绍 交换机端口安全功能是针对交换机端口进行安全属性的配置&#xff0c;以控制用户的安全接入。主要包括以下两种配置项&#xff1a; ①限制交换机端口的最大连接数&#xff1a;控制交换机端口连接的主机数量&#xff1b;防止用户进行恶…...

深入解析大语言模型系列:Transformer架构的原理与应用

引言 在自然语言处理&#xff08;NLP&#xff09;领域&#xff0c;大语言模型&#xff08;Large Language Models, LLMs&#xff09;近几年取得了突破性的进展&#xff0c;而 Transformer 作为这些模型的核心架构&#xff0c;功不可没。本文将详细介绍 Transformer 的原理、结…...

uni-app地图组件控制

uni.createMapContext(mapId,this) 创建并返回 map 上下文 mapContext 对象。在自定义组件下&#xff0c;第二个参数传入组件实例this&#xff0c;以操作组件内 <map> 组件。 注意&#xff1a;uni.createMapContext(mapId, this) app-nvue 平台 2.2.5 支持 uni.create…...

前端调用api发请求常用的请求头content- type的类型和常用场景

Content-Type 是一个非常重要的HTTP头&#xff0c;它定义了发送给服务器或客户端的数据的MIME类型。这对于服务器和客户端正确解析和处理数据至关重要。下面是一些常见的 Content-Type 值及其用途和区别。 常见的 Content-Type 值 text/plain • 用途: 纯文本&#xff0c;无格…...

数据仓库之SparkSQL

Apache Spark SQL是Spark中的一个组件&#xff0c;专门用于结构化数据处理。它提供了通过SQL和DataFrame API来执行结构化数据查询的功能。以下是对Spark SQL的详细介绍&#xff1a; 核心概念 DataFrame: 定义: DataFrame是一个分布式数据集合&#xff0c;类似于关系型数据库中…...

如何在 MySQL 中导入和导出数据库以及重置 root 密码

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到网站。 如何导入和导出数据库 导出 要导出数据库&#xff0c;打开终端&#xff0c;确保你没有登录到 MySQL 中&#xff0c;然后输入以下命令&…...

基于uni-app和图鸟UI的云课堂小程序开发实践

摘要&#xff1a; 随着移动互联网的快速发展&#xff0c;移动学习已成为教育领域的重要趋势。本文介绍了基于uni-app和图鸟UI框架开发的云课堂小程序&#xff0c;该小程序实现了移动教学、移动学习、移动阅读和移动社交的完美结合&#xff0c;为用户提供了一个便捷、高效的学习…...

解决python从TD数据库取50w以上大量数据慢的问题

1.问题背景描述 python项目中的时序数据都存放在TD数据库中&#xff0c;数据是秒级存入的&#xff0c;当查询一周数据时将超过50w数据量&#xff0c;这是一次性获取全量数据到python程序很慢&#xff0c;全流程10秒以上&#xff0c;希望进行优化加速 2.排查 首先&#xff0c…...

游戏心理学Day21

玩家情绪与暴力攻击 情绪 情绪的分类 情绪是一种经常波动的东西&#xff0c;我们既体验过骄傲激动和开心&#xff0c;也体验过羞怯内疚和沮丧。我们的感受高度依赖于情境。研究者区分出至少三种途径来考察作为一种相对固定的人格特征的情绪&#xff0c;即为情感性&#xff0…...

接口测试基础 --- 什么是接口测试及其测试流程?

接口测试是软件测试中的一个重要部分&#xff0c;它主要用于验证和评估不同软件组件之间的通信和交互。接口测试的目标是确保不同的系统、模块或组件能够相互连接并正常工作。 接口测试流程可以分为以下几个步骤&#xff1a; 1.需求分析&#xff1a;首先&#xff0c;需要仔细…...

React第五十七节 Router中RouterProvider使用详解及注意事项

前言 在 React Router v6.4 中&#xff0c;RouterProvider 是一个核心组件&#xff0c;用于提供基于数据路由&#xff08;data routers&#xff09;的新型路由方案。 它替代了传统的 <BrowserRouter>&#xff0c;支持更强大的数据加载和操作功能&#xff08;如 loader 和…...

Objective-C常用命名规范总结

【OC】常用命名规范总结 文章目录 【OC】常用命名规范总结1.类名&#xff08;Class Name)2.协议名&#xff08;Protocol Name)3.方法名&#xff08;Method Name)4.属性名&#xff08;Property Name&#xff09;5.局部变量/实例变量&#xff08;Local / Instance Variables&…...

将对透视变换后的图像使用Otsu进行阈值化,来分离黑色和白色像素。这句话中的Otsu是什么意思?

Otsu 是一种自动阈值化方法&#xff0c;用于将图像分割为前景和背景。它通过最小化图像的类内方差或等价地最大化类间方差来选择最佳阈值。这种方法特别适用于图像的二值化处理&#xff0c;能够自动确定一个阈值&#xff0c;将图像中的像素分为黑色和白色两类。 Otsu 方法的原…...

基础测试工具使用经验

背景 vtune&#xff0c;perf, nsight system等基础测试工具&#xff0c;都是用过的&#xff0c;但是没有记录&#xff0c;都逐渐忘了。所以写这篇博客总结记录一下&#xff0c;只要以后发现新的用法&#xff0c;就记得来编辑补充一下 perf 比较基础的用法&#xff1a; 先改这…...

【Go】3、Go语言进阶与依赖管理

前言 本系列文章参考自稀土掘金上的 【字节内部课】公开课&#xff0c;做自我学习总结整理。 Go语言并发编程 Go语言原生支持并发编程&#xff0c;它的核心机制是 Goroutine 协程、Channel 通道&#xff0c;并基于CSP&#xff08;Communicating Sequential Processes&#xff0…...

在Ubuntu中设置开机自动运行(sudo)指令的指南

在Ubuntu系统中&#xff0c;有时需要在系统启动时自动执行某些命令&#xff0c;特别是需要 sudo权限的指令。为了实现这一功能&#xff0c;可以使用多种方法&#xff0c;包括编写Systemd服务、配置 rc.local文件或使用 cron任务计划。本文将详细介绍这些方法&#xff0c;并提供…...

【AI学习】三、AI算法中的向量

在人工智能&#xff08;AI&#xff09;算法中&#xff0c;向量&#xff08;Vector&#xff09;是一种将现实世界中的数据&#xff08;如图像、文本、音频等&#xff09;转化为计算机可处理的数值型特征表示的工具。它是连接人类认知&#xff08;如语义、视觉特征&#xff09;与…...

Matlab | matlab常用命令总结

常用命令 一、 基础操作与环境二、 矩阵与数组操作(核心)三、 绘图与可视化四、 编程与控制流五、 符号计算 (Symbolic Math Toolbox)六、 文件与数据 I/O七、 常用函数类别重要提示这是一份 MATLAB 常用命令和功能的总结,涵盖了基础操作、矩阵运算、绘图、编程和文件处理等…...

【RockeMQ】第2节|RocketMQ快速实战以及核⼼概念详解(二)

升级Dledger高可用集群 一、主从架构的不足与Dledger的定位 主从架构缺陷 数据备份依赖Slave节点&#xff0c;但无自动故障转移能力&#xff0c;Master宕机后需人工切换&#xff0c;期间消息可能无法读取。Slave仅存储数据&#xff0c;无法主动升级为Master响应请求&#xff…...

mysql已经安装,但是通过rpm -q 没有找mysql相关的已安装包

文章目录 现象&#xff1a;mysql已经安装&#xff0c;但是通过rpm -q 没有找mysql相关的已安装包遇到 rpm 命令找不到已经安装的 MySQL 包时&#xff0c;可能是因为以下几个原因&#xff1a;1.MySQL 不是通过 RPM 包安装的2.RPM 数据库损坏3.使用了不同的包名或路径4.使用其他包…...