【蓝桥杯3.23小白赛】(详解)
第一题签到题不多说
【二进制王国】
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;//int Cmp(string s1, string s2)测试了一下时间差确实很明显,还是用下面的内个
int Cmp(const string &s1,const string &s2)
//const 修饰表示在函数内部不会修改参数的值
//引用 & 的形式可以避免在传递参数时进行字符串的复制,提高效率
{return s1+s2<s2+s1;//return true
}int main() {int n;cin >> n;vector<string> a(n);for (int i = 0; i < n; i++) {cin >> a[i];}sort(a.begin(),a.end(),Cmp);for (int i=0;i<n;i++) {cout<<a[i];}return 0;
}
因为题目中给的案例主观臆断都是三位数(龙怒),没有考虑到两位的情况,like:10和1,当字符串长度不相等时,会根据字符串的长度来进行比较,“1” 的长度小于 “10”,所以在排序时 “1” 会被排在 “10” 前面,最终输出的结果是 “110”
【djwcb】
#include <iostream>
#include<math.h>
#include<string>
using namespace std;
int main()
{int t = 0;cin >> t;int x;string p;for (int i = 0; i < t; i++) {cin >> x >> p;int k;if (p.size() > 1) {k = stoi(p.substr(p.size() - 2, p.size()));}else k = stoi(p.substr(p.size() - 1, p.size()));k %= 4;x %= 10;if (!k)k = 4;int res = 1;res = pow(x, k);cout << res%10 << endl;}return 0;
}
因为题目给的数据非常大,暴力首先pass掉了,肯定得找规律,列几个数可以发现每四个一个循环,所以只把k对4取余就行,这里要注意至少保留两位,我当时是只保留了一位(like:2%4和12%4,昨天听课评论区大佬指出来的,再次感谢),算完之后取最后一位即可
【求解线性方程组】
#include <iostream>
#define LL long long
#define cir(i,a,b) for(int i=a;i<=b;i++)
using namespace std;
const int N=2e5+5;
int a[N],x[N],y[N];
int main()
{int n;cin>>n;cir(i,1,n){cin>>a[i];}x[1]=0;//x1是0bool det=false;cir(i,2,n){x[i]=a[i-1]-x[i-2]-x[i-1];if(!(x[i]==1||x[i]==0)){det= true;break;}}y[1]=1;//是1cir(i,2,n){y[i]=a[i-1]-y[i-2]-y[i-1];}if(!det){cir(i,1,n)cout<<x[i]<<" ";}else{cir(i,1,n)cout<<y[i]<<" ";}// 请在此输入您的代码return 0;
}
取值只能是0和1(微笑),当时看评论区有人也说到了这个点儿,眼睛瞪得像铜铃,或许仔细再想想我也能做出来了也说不定(咬抹布哭)
定x1的值,其他值都是确定的,所以只有两种情况,肯定是0在前面的字典序小(我恨,感觉脑子被题摁在地上摩擦)
x2=a1-x1;
x3=a2-x1-x2;
x4=a3-x2-x3…
【美丽圆环】(题说你看看我~ 美 ~吗)
#include <iostream>
#include<algorithm>
using namespace std;int main()
{int t;cin >> t;while (t--){int n;cin >> n;int a[101];int count=0;for (int i = 0; i < n; i++)cin >> a[i];sort(a,a+n);if(n==2){if(a[0]==a[1])count=0;elsecount=1;}else{if(a[0]!=a[1])//首比两边小count++;if(a[n-1]!=a[n-2])//尾比两边大count++;if(count==2){if(a[1]==a[2]||a[n-2]==a[n-3])count=1;}}cout<<count<<endl;}return 0;
}
可以操作1,也可以操作2,一开始没看明白题意,只要使操作2最少就行。因为不限制操作1的次数,只要中间是按从小到大顺序排序的都符合条件,肯定左边小右边大大不了就相等,只考虑首尾衔接就行
if(a[1]==a[2]||a[n-2]==a[n-3])
这个算首尾的特殊情况吧,因为首尾面对的不是大大就是小小,如果有一种和它相等的情况就可以不考虑替换。like:1 2 3 4 5变 5 2 3 4 5 小2现在就是很尴尬的境地,但是 1 2 2 4 5变5 2 2 4 5 就可以啦,可以多画画试试,这里就不举别的例子了
【小兰的跳跃】
贪心
#include <iostream>
#define LL long long
using namespace std;
const int N=2e5+5;
const int X=4e5+5;
int a[N];int main()
{int t;//组数cin>>t;while(t--){int n,x;//格子数,最终心情cin>>n>>x;for(int i=1;i<=n;i++){cin>>a[i];}a[n+1]=0;int min=0,max=0,i=0;while(i!=n&&i!=n+1){if(a[i+1]==-1){min+=a[i+1];i++;}else{min+=a[i+2];i+=2;}}i=0;while(i!=n&&i!=n+1){if(a[i+1]==1){max+=a[i+1];i++;}else{max+=a[i+2];i+=2;}}if (x >= min && x <= max)cout<<"Yes"<<endl;elsecout<<"No"<<endl;}return 0;
}
dp
#include <iostream>
#include<cmath>
#define LL long long
using namespace std;
const int N=2e5+5;
const int X=4e5+5;
int a[N],dp1[N],dp2[N];int main()
{int t;//组数cin>>t;while(t--){int n,x;//格子数,最终心情cin>>n>>x;for(int i=1;i<=n;i++){cin>>a[i];}a[n+1]=0;dp1[1]=a[1],dp2[1]=a[1];for(int i=2;i<=n+1;i++){dp1[i]=min(dp1[i-1],dp1[i-2])+a[i];dp2[i]=max(dp2[i-1],dp2[i-2])+a[i];}
if (x >= dp1[n+1] && x <= dp2[n+1])cout<<"Yes"<<'\n';elsecout<<"No"<<'\n';}return 0;}
只要在最大值和最小值中间就行,这个详解也可以参考我原来发的台阶方案那一篇
总之这次出的zhei叫一个不地地地地地地地地道(划掉),打下这篇文章就是为了先把这句话敲上(bushi)。学算法之后每天都出去溜达溜达晒太阳,因为身上的怨气比 都大
言归正传,做的时候完整敲了仨题除了签到的都给我扣下了(嘻嘻),正好我c语言助教今天在我旁边问我有没有学到什么,我跟他仔细反思了错误和可以进步的地方,然后今天又把这几个题敲了一遍
我在三月初的代码经历还停留在hello world上有点儿夸张吧,但是确实我直到昨天才把for里面i<n还是<=n弄明白(哭哭)。大家肯定比我厉害,昨天看评论区都在问能不能退钱哈哈,连我都在坚持,也希望大家可以共勉,没有进步的路是不痛苦的,我必成功,你们也是。
相关文章:
【蓝桥杯3.23小白赛】(详解)
第一题签到题不多说 【二进制王国】 #include <iostream> #include <vector> #include <algorithm> using namespace std;//int Cmp(string s1, string s2)测试了一下时间差确实很明显,还是用下面的内个 int Cmp(const string &s1,const st…...
设计模式之抽象工厂模式精讲
概念:为创建一组相关或相互依赖的对象提供一个接口,而且无须指定他们的具体类。 抽象工厂模式是工厂方法模式的升级版本。在存在多个业务品种或分类时,抽象工厂模式是一种更好的解决方式。 抽象工厂模式的UML类图如下: 可以看…...
初识云原生、虚拟化、DevOps
文章目录 K8S虚拟化DevOpsdevops平台搭建工具大数据架构 K8S master 主节点,控制平台,Master节点负责核心的调度、管理和运维,不需要很高性能,不跑任务,通常一个就行了,也可以开多个主节点来提高集群可用度…...
怎麼實現Nginx反向代理?
Nginx是一款開源軟體,可以作為Web伺服器、負載均衡器和反向代理使用,是高性能的HTTP和反向代理伺服器。其中反向代理是Nginx的一項重要特性。接下來,我們詳細講一下Nginx反向代理的實現和應用。 反向代理是什麼? 代理一詞通常指的…...
IOS面试题编程机制 71-75
71. 简述有哪几种手势通知方法?-(void)touchesBegan:(NSSet*)touchedwithEvent:(UIEvent*)event; -(void)touchesMoved:(NSSet*)touched withEvent:(UIEvent*)event; -(void)touchesEnded:(NSSet*)touchedwithEvent:(UIEvent*)event; -(void)touchesCanceled:(NSSet*)touchedw…...
JMeter元件作用域和执行顺序
JMeter元件作用域和执行顺序 元件的基本介绍基本元件总结 作用域的基本介绍作用域的原则元件执行顺序Jmeter第一个案例: Jmeter三个重要组件(重点)线程组特点线程组分类线程组的属性案例分析 HTTP请求案例一(使用HTTP请求路径来传…...
Jmeter 聚合报告之 90% Line 正确理解
今天看了些关于Jmeter 聚合报告之 90% Line 的一些博客 关于90% Line 的算法各有各自的见解 。 90%Line可以用公式计算: 100/总个数每一个所占的百分比,90%/每一个所占的百分比90%Line的序号(从小到大排) 例如:1.2.3.…...
2024 解决 Failed to launch process [ElasticSearch]
操作系统:centos 7 (x86) sonarQube不能使⽤root账号进⾏启动,所以需要创建普通⽤户及其⽤户组 一、问题描述:使用root启动时,一直反馈 SonarQube is not running 问题原因:不能够使用root用户进行启动 解决方案…...
平台介绍-搭建赛事运营平台(4)
存储结构是赛事运营平台的核心设计内容。平台整体采用分库结构,各赛事独立享有自己的数据库。但是选手、家长、赛事组织机构、培训机构、老师、志愿者信息都是存储在核心库中。新增报名时,家长或老师首先看自己名下有无该选手信息(对照关系也…...
系列学习前端之第 7 章:一文掌握 AJAX
1、AJAX 简介 AJAX 全称为 Asynchronous JavaScript And XML(中文名:阿贾克斯),就是异步的 JS 和 XML。AJAX 不是新的编程语言,而是一种将现有的标准组合在一起使用的新方式。AJAX 可以在浏览器中向服务器发送异步请求…...
iOS - Runtime - Class的结构
文章目录 iOS - Runtime - Class的结构前言1. Class的结构1.1 Class的结构1.1.1 objc_class1.1.2 class_rw_t1.1.3 class_ro_t 1.2 class_rw_t和class_ro_t的区别1.3 class_rw_t和class_ro_t的关系1.3.1 分析关系1.3.2 原因 1.4 method_t1.4.1 Type Encoding1.4.2 types iOS - …...
MySQL高阶语句(一)
一、常用查询 (增、删、改、查) 对 MySQL 数据库的查询,除了基本的查询外,有时候需要对查询的结果集进行处理。 例如只取 10 条数据、对查询结果进行排序或分组等等 1、按关键字排序 PS:类比于windows 任务管理器 使用 SELECT 语…...
MySQL知识总结
一条 SQL 语句过来的流程是什么样的? ①当客户端连接到 MySQL 服务器时,服务器对其进行认证。可以通过用户名与密码认证,也可以通过 SSL 证书进行认证。登录认证后,服务器还会验证客户端是否有执行某个查询的操作权限。 ②在正式…...
Go-Gin-Example 第八部分 优化配置接口+图片上传功能
文章目录 前情提要本节目标 优化配置结构讲解落实修改配置文件优化配置读取及设置初始化顺序第一步 验证 抽离file 实现上传图片接口图片名加密封装image的处理逻辑编写上传图片的业务逻辑增加图片上传的路由 验证实现前端访问 http.FileServerr.StaticFS修改文章接口新增、更新…...
阿里云国际DDoS高防的定制场景策略
DDoS高防的定制场景策略允许您在特定的业务突增时段(例如新业务上线、双11大促销等)选择应用独立于通用防护策略的定制防护策略模板,保证适应业务需求的防护效果。您可以根据需要设置定制场景策略。 背景信息 定制场景策略提供基于业务场景…...
v4l2采集视频
Video4Linux2(v4l2)是用于Linux系统的视频设备驱动框架,它允许用户空间应用程序直接与视频设备(如摄像头、视频采集卡等)进行交互。 linux系统下一切皆文件,对视频设备的操作就像对文件的操作一样ÿ…...
Spring Cloud 八:微服务架构中的数据管理
Spring Cloud 一:Spring Cloud 简介 Spring Cloud 二:核心组件解析 Spring Cloud 三:API网关深入探索与实战应用 Spring Cloud 四:微服务治理与安全 Spring Cloud 五:Spring Cloud与持续集成/持续部署(CI/C…...
Chrome/Edge 使用 Markdown Viewer 查看 Markdown 格式文件
Chrome/Edge 使用 Markdown Viewer 查看 Markdown 格式文件 0. 引言1. 安装 Markdown Viewer 插件2. 使用 Markdown Viewer 阅读 Markdown 格式文件 0. 引言 大部分程序员都喜欢 Markdown 格式的文件,这时给一些没有在电脑上安装 Markdown 编辑器的同事分享资料时&…...
flutter 弹窗之系列一
自定义不受Navigator影响的弹窗 class MyHomePage extends StatefulWidget {const MyHomePage({super.key, required this.title});final String title;overrideState<MyHomePage> createState() > _MyHomePageState(); }class _MyHomePageState extends State<MyH…...
【Flink实战】Flink hint更灵活、更细粒度的设置Flink sql行为与简化hive连接器参数设置
文章目录 一. create table hints1. 语法2. 示例3. 注意 二. 实战:简化hive连接器参数设置三. select hints(ing) SQL 提示(SQL Hints)是和 SQL 语句一起使用来改变执行计划的。本章介绍如何使用 SQL 提示来实现各种干预。 SQL 提示一般可以…...
突破不可导策略的训练难题:零阶优化与强化学习的深度嵌合
强化学习(Reinforcement Learning, RL)是工业领域智能控制的重要方法。它的基本原理是将最优控制问题建模为马尔可夫决策过程,然后使用强化学习的Actor-Critic机制(中文译作“知行互动”机制),逐步迭代求解…...
大数据零基础学习day1之环境准备和大数据初步理解
学习大数据会使用到多台Linux服务器。 一、环境准备 1、VMware 基于VMware构建Linux虚拟机 是大数据从业者或者IT从业者的必备技能之一也是成本低廉的方案 所以VMware虚拟机方案是必须要学习的。 (1)设置网关 打开VMware虚拟机,点击编辑…...
2024年赣州旅游投资集团社会招聘笔试真
2024年赣州旅游投资集团社会招聘笔试真 题 ( 满 分 1 0 0 分 时 间 1 2 0 分 钟 ) 一、单选题(每题只有一个正确答案,答错、不答或多答均不得分) 1.纪要的特点不包括()。 A.概括重点 B.指导传达 C. 客观纪实 D.有言必录 【答案】: D 2.1864年,()预言了电磁波的存在,并指出…...
ffmpeg(四):滤镜命令
FFmpeg 的滤镜命令是用于音视频处理中的强大工具,可以完成剪裁、缩放、加水印、调色、合成、旋转、模糊、叠加字幕等复杂的操作。其核心语法格式一般如下: ffmpeg -i input.mp4 -vf "滤镜参数" output.mp4或者带音频滤镜: ffmpeg…...
【Go】3、Go语言进阶与依赖管理
前言 本系列文章参考自稀土掘金上的 【字节内部课】公开课,做自我学习总结整理。 Go语言并发编程 Go语言原生支持并发编程,它的核心机制是 Goroutine 协程、Channel 通道,并基于CSP(Communicating Sequential Processes࿰…...
有限自动机到正规文法转换器v1.0
1 项目简介 这是一个功能强大的有限自动机(Finite Automaton, FA)到正规文法(Regular Grammar)转换器,它配备了一个直观且完整的图形用户界面,使用户能够轻松地进行操作和观察。该程序基于编译原理中的经典…...
Redis的发布订阅模式与专业的 MQ(如 Kafka, RabbitMQ)相比,优缺点是什么?适用于哪些场景?
Redis 的发布订阅(Pub/Sub)模式与专业的 MQ(Message Queue)如 Kafka、RabbitMQ 进行比较,核心的权衡点在于:简单与速度 vs. 可靠与功能。 下面我们详细展开对比。 Redis Pub/Sub 的核心特点 它是一个发后…...
通过 Ansible 在 Windows 2022 上安装 IIS Web 服务器
拓扑结构 这是一个用于通过 Ansible 部署 IIS Web 服务器的实验室拓扑。 前提条件: 在被管理的节点上安装WinRm 准备一张自签名的证书 开放防火墙入站tcp 5985 5986端口 准备自签名证书 PS C:\Users\azureuser> $cert New-SelfSignedCertificate -DnsName &…...
C++实现分布式网络通信框架RPC(2)——rpc发布端
有了上篇文章的项目的基本知识的了解,现在我们就开始构建项目。 目录 一、构建工程目录 二、本地服务发布成RPC服务 2.1理解RPC发布 2.2实现 三、Mprpc框架的基础类设计 3.1框架的初始化类 MprpcApplication 代码实现 3.2读取配置文件类 MprpcConfig 代码实现…...
ubuntu22.04 安装docker 和docker-compose
首先你要确保没有docker环境或者使用命令删掉docker sudo apt-get remove docker docker-engine docker.io containerd runc安装docker 更新软件环境 sudo apt update sudo apt upgrade下载docker依赖和GPG 密钥 # 依赖 apt-get install ca-certificates curl gnupg lsb-rel…...
