蓝桥杯第十六届c组c++题目及个人理解

本篇文章只是部分题目的理解,代码和思路仅供参考,切勿当成正确答案,欢迎各位小伙伴在评论区与博主交流!

题目:2025

题目解析

核心提取

要求的数中至少有1个0、2个2、1个5

代码展示

#include<iostream>
#include<bits/stdc++.h>
using namespace std;
bool judge(int n)
{int x = n;int nums_2 = 0, nums_0 = 0, nums_5 = 0; while(x){int tmp = x % 10;if(tmp == 2) nums_2++;if(tmp == 0) nums_0++;if(tmp == 5) nums_5++;x /= 10;}if(nums_2 == 2 && nums_0 == 1 && nums_5 == 1) return true;else return false;
}
int main()
{int cnt = 0; for(int i = 1; i <= 20250412; i++){if(judge(i))//为真{cnt++;//计数器 + 1 }}cout << cnt;return 0;} 

题目:数位倍数

题目解析

核心提取 

数位之和%5为0

代码展示

#include<iostream>
#include<bits/stdc++.h>
using namespace std;
bool judge(int n)
{int x = n;int sum_shuwei = 0;while(x){int tmp = x % 10;sum_shuwei += tmp;x /= 10;}if(sum_shuwei % 5 == 0) return true;else return false;
} 
int main()
{int cnt = 0; for(int i = 1; i <= 202504; i++){if(judge(i))//为真{cnt++;//计数器 + 1 }}cout << cnt;return 0;} 

题目:倒水

题目解析

核心提取 

第i个瓶子与第i + k个瓶子内水的颜色相同

第i个瓶子和第j(i + k)个瓶子内的水满足要求i < j

代码原理

这里的代码原理主要是凑,满足i<j才能结束凑

注意:减表示第i个瓶子内的水倒出      加表示第i + k个瓶子的水增加

代码展示

#include<iostream>
#include<bits/stdc++.h>
using namespace std;
const int N = 100000;
int a[N];
int main()
{int n = 0, k = 0;cin >> n >> k;for(int i = 1; i <= n; i++){cin >> a[i];}for(int i = 1; i <= n / 2; i++){for(int j = i + k; j <= n; j++){while(a[i] > a[j]){a[i]--;a[j]++;}}}int min_val = 0x3f3f3f3f;for(int i = 1; i <= n; i++){min_val = min(min_val, a[i]);}cout << min_val;return 0;} 

个人理解

本段代码可能存在一定的缺陷,当时在比赛中也想不出啥好的思路,于是就分析了一下这个例子,于是就发现可以凑,反正时间复杂度肯定超时,有新思路的小伙伴欢迎在评论区与博主分享 

题目:拼好数

题目解析

核心提取 

好数的定义:6的个数≥6个,且每一组最多只能有三个数

代码原理

红色框所框住的是重点

代码展示

#include<iostream>
#include<bits/stdc++.h>
using namespace std;
const int N = 1010;
struct Node
{string val;int val_6_nums;//统计6的个数 
}a[N];
int jisuan(string n)//统计6的个数 
{string x = n;int nums_6 = 0;for(int i = 0; i < n.size(); i++){if(n[i] == '6') nums_6++;}return nums_6;
}
bool cmp(Node a, Node b)
{if(a.val_6_nums != b.val_6_nums)return a.val_6_nums > b.val_6_nums;else return a.val > b.val;
}
int main()
{int n = 0;cin >> n;for(int i = 1; i <= n; i++){cin >> a[i].val;}for(int i = 1; i <= n; i++){a[i].val_6_nums = jisuan(a[i].val);//先统计每个字符串的中6的个数 }sort(a + 1, a + 1 + n, cmp);//排序,贪心的体现 int ret = 0;int i = 1;int tm = 0;while(i <= n){if(a[i].val_6_nums >= 6) {ret++;i++;}else if(a[i].val_6_nums < 6){a[i + 1].val += a[i].val;//拼接字符串 a[i + 1].val_6_nums = jisuan(a[i + 1].val);//更新6的个数 if(tm == 3)break;tm++; }i++;}cout << ret;return 0;} 

当然还是那句话本段代码可能存在一些缺陷,所以代码和思路仅供参考,如果有新的思路或者代码上有新的缺陷,欢迎在评论区留言

题目 :最短距离

题目解析

 首先我们先来讲一下这个示例

示例解析

代码原理

这题的代码原理与三国游戏的原理比较类似,总之也是贪心

代码展示

#include<iostream>
#include<bits/stdc++.h>
using namespace std;
const int N = 50010;
int a[N], b[N];
int main()
{int n = 0;cin >> n;for(int i = 1; i <= n; i++) cin >> a[i];for(int i = 1; i <= n; i++) cin >> b[i];sort(a + 1, a + 1 + n);//排序,贪心的体现 sort(b + 1, b + 1 + n);int ret = 0;for(int i = 1; i <= n; i++){ret += abs(a[i] - b[i]);}cout << ret;return 0;} 

ok本篇文章的分享就到这里,至此蓝桥杯系列的文章完结,当然有需要的小伙伴可以留言,博主看到有小伙伴要求依旧会更新。

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

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

相关文章

使用mermaidchart 显示graph LR

使用mermaidchart 显示graph LRMermaid Chart - Create complex, visual diagrams with text. A smarter way of creating diagrams.

基于计算机视觉的试卷答题区表格识别与提取技术

基于计算机视觉的试卷答题区表格识别与提取技术 摘要 本文介绍了一种基于计算机视觉技术的试卷答题区表格识别与提取算法。该算法能够自动从试卷图像中定位答题区表格&#xff0c;执行图像方向矫正&#xff0c;精确识别表格网格线&#xff0c;并提取每个答案单元格。本技术可…

SpringAI实现AI应用-自定义顾问(Advisor)

SpringAI实战链接 1.SpringAl实现AI应用-快速搭建-CSDN博客 2.SpringAI实现AI应用-搭建知识库-CSDN博客 3.SpringAI实现AI应用-内置顾问-CSDN博客 4.SpringAI实现AI应用-使用redis持久化聊天记忆-CSDN博客 5.SpringAI实现AI应用-自定义顾问&#xff08;Advisor&#xff09…

【HarmonyOS 5】App Linking 应用间跳转详解

目录 什么是 App Linking 使用场景 工作原理 如何开发 1.开通 App Linking 2.确定域名 3.服务端部署 applinking.json 文件 4.AGC绑定域名 5.项目配置 6.组装聚合链接 7.解析聚合链接中的参数 其他 如何获取应用ID 什么是 App Linking App Linking 是一款创建跨…

什么是变量提升?(形象的比喻)

当然&#xff01;可以用几个生活中的比喻来形象地解释变量提升&#xff1a; ​​1. 书架的占位符​​ 想象你有一个书架&#xff0c;但还没放书。 • 变量提升&#xff08;var&#xff09;&#xff1a; 你先在书架上贴了一个标签&#xff08;比如写“我的书”&#xff09;&…

C++面向对象编程入门:从类与对象说起(一)

C语言是面向过程&#xff0c;关注的是过程&#xff0c;分析出求解问题的步骤&#xff0c;通过函数调用逐步解决问题&#xff0c;而C面向的是对象&#xff0c;关注的是对象&#xff0c;将一件事拆解成多个对象&#xff0c;靠对象之间互交完成。 目录 类的定义 类的两种定义 …

uniapp tabBar 中设置“custom“: true 在H5和app中无效解决办法

uniapp小程序自定义底部tabbar&#xff0c;但是在转成H5和app时发现"custom": true 无效&#xff0c;原生tabbar会显示出来 解决办法如下 在tabbar的list中设置 “visible”:false 代码如下&#xff1a;"tabBar": {"custom": true,//"cust…

SpringBoot学生操行评分系统源码设计开发

概述 基于SpringBoot框架开发的学生操行评分系统完整项目&#xff0c;该系统采用主流技术栈开发&#xff0c;包含完善的评分管理功能模块&#xff0c;是学校管理、教育培训机构理想的数字化解决方案&#xff0c;非常适合作为设计参考或二次开发基础项目。 主要内容 5.1 管理…

从代码学习深度学习 - 单发多框检测(SSD)PyTorch版

文章目录 前言工具函数数据处理工具 (`utils_for_data.py`)训练工具 (`utils_for_train.py`)检测相关工具 (`utils_for_detection.py`)可视化工具 (`utils_for_huitu.py`)模型类别预测层边界框预测层连接多尺度预测高和宽减半块基础网络块完整的模型训练模型读取数据集和初始化…

基于STM32的温湿度光照强度仿真设计(Proteus仿真+程序设计+设计报告+讲解视频)

这里写目录标题 **1.****主要功能****2.仿真设计****3.程序设计****4.设计报告****5.下载链接** 基于STM32的温湿度光照强度仿真设计(Proteus仿真程序设计设计报告讲解视频&#xff09; 仿真图Proteus 8.9 程序编译器&#xff1a;keil 5 编程语言&#xff1a;C语言 设计编号…

SSH 服务部署指南

本指南涵盖 OpenSSH 服务端的安装、配置密码/公钥/多因素认证&#xff0c;以及连接测试方法。 适用系统&#xff1a;Ubuntu/Debian、CentOS/RHEL 等主流 Linux 发行版。 1. 安装 SSH 服务端 Ubuntu/Debian # 更新软件包索引 sudo apt update# 安装 OpenSSH 服务端 sudo apt i…

《Python星球日记》 第46天:决策树与随机森林

名人说:路漫漫其修远兮,吾将上下而求索。—— 屈原《离骚》 创作者:Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder😊) 专栏:《Python星球日记》,限时特价订阅中ing 目录 一、前言二、决策树算法原理1. 决策树简介2. 决策树的分裂准则(1) 信息熵与信息增益(2) 基尼不纯…

Vue2:引入公共JS,通过this调用

tools.js // 图片加上前缀 baseurl 是请求域名 img 是图片路径export function getimgurl(img) {return ${this.$baseurl}${img}}main.js import baseUrl from "/api/baseUrl.js" Vue.prototype.$baseurl baseUrlimport {getimgurl} from /api/tool.js; Vue.protot…

【Hot 100】 146. LRU 缓存

目录 引言LRU 缓存官方解题LRU实现&#x1f4cc; 实现步骤分解步骤 1&#xff1a;定义双向链表节点步骤 2&#xff1a;创建伪头尾节点&#xff08;关键设计&#xff09;步骤 3&#xff1a;实现链表基础操作操作 1&#xff1a;添加节点到头部操作 2&#xff1a;移除任意节点 步骤…

【Linux】swap交换分区管理

目录 一、Swap 交换分区的功能 二、swap 交换分区的典型大小的设置 2.1 查看交换分区的大小 2.1.1 free 2.1.2 cat /proc/swaps 或 swapon -s 2.1.3 top 三、使用交换分区的整体流程 3.1 案例一 3.2 案例二 一、Swap 交换分区的功能 计算机运行一个程序首先会将外存&am…

【计算机网络】用户从输入网址到网页显示,期间发生了什么?

1.URL解析 浏览器分解URL&#xff1a;https://www.example.com/page 协议&#xff1a;https域名&#xff1a;www.example.com路径&#xff1a;/page 2.DNS查询&#xff1a; 浏览器向DNS服务器发送查询请求&#xff0c;将域名解析为对应的IP地址。 3.CDN检查(如果有)&#…

架空输电线巡检机器人轨迹优化设计

架空输电线巡检机器人轨迹优化 摘要 本论文针对架空输电线巡检机器人的轨迹优化问题展开研究,综合考虑输电线复杂环境、机器人运动特性及巡检任务需求,结合路径规划算法、智能优化算法与机器人动力学约束,构建了多目标轨迹优化模型。通过改进遗传算法与模拟退火算法,有效…

根据窗口大小自动调整页面缩放比例,并保持居中显示

vue 项目 直接上代码 图片u1.png 是个背景图片 图片u2.png 是个遮罩 <template><div id"app"><div class"viewBox"><divclass"screen":style"{ transform: translate(-50%,-50%…

初学Python爬虫

文章目录 前言一、 爬虫的初识1.1 什么是爬虫1.2 爬虫的核心1.3 爬虫的用途1.4 爬虫分类1.5 爬虫带来的风险1.6. 反爬手段1.7 爬虫网络请求1.8 爬虫基本流程 二、urllib库初识2.1 http和https协议2.2 编码解码的使用2.3 urllib的基本使用2.4 一个类型六个方法2.5 下载网页数据2…

oracle 数据库sql 语句处理过程

14.1SQL语句处理过程 在进行SQL语句处理优化前&#xff0c;需要先熟悉和了解SQL语句的处理过程。 每种类型的语句在执行时都需要如下阶段&#xff1a; 第1步: 创建游标。 第2步: 分析语句。 第5步: 绑定变量。 第7步: t运行语句。 第9步: 关闭游标。 如果使用了并行功能&#x…