蓝桥·算法双周赛|第七场分级赛——小白入门赛

在这里插入图片描述

🔥博客介绍`: 27dCnc

🎥系列专栏: <<数据结构与算法>> << 算法入门>> << C++项目>>

🎥 当前专栏: << 算法入门>>

专题 : 数据结构帮助小白快速入门算法
👍👍👍👍👍👍👍👍👍👍👍👍
☆*: .。. o(≧▽≦)o .。.:*☆

❤️感谢大家点赞👍收藏⭐评论✍️

在这里插入图片描述

学习目标:

今日学习打卡
在这里插入图片描述

  • ACM题解

学习时间:

  • 周一至周五晚上 7 点—晚上9点
  • 周六上午 9 点-上午 11 点
  • 周日下午 3 点-下午 6 点

赛题:

在这里插入图片描述


内容详细:

thanks,mom【算法赛】

题目考点: 语言题

在这里插入图片描述

解题思路: 直接输出

易错点,注意输出格式: thanks, 后面有个空格

代码

#include <iostream>
using namespace std;
int main()
{std::cout << "thanks, mom";return 0;
}

霓虹【算法赛】

题目考点: 思维 数组表示状态

在这里插入图片描述

思路:

用 0 和 1 表示每个数的开关状态,然后以没有变化前和变化后的数为下标去查询比较状态,最后得出答案

代码

#include <iostream>
using namespace std;
using ll = long long;void solve(string s,string t) {int a[7][10] = {{1,0,1,1,0,1,1,1,1,1},{1,1,1,1,1,0,0,1,1,1},{1,1,0,1,1,1,1,1,1,1},{1,0,1,1,0,1,1,0,1,1},{1,0,1,0,0,0,1,0,1,0},{1,0,0,0,1,1,1,0,1,1},{0,0,1,1,1,1,1,0,1,1}};ll ans = 0;for (int i = 0; i < s.size(); i++) {if(s[i] != t[i]) {for (int j = 0; j < 7; j++) {if (a[j][s[i] - '0'] != a[j][t[i] - '0']) ans++;}}}std::cout << ans << endl;
}int main()
{string s,T;std::cin >> s >> T;solve(s,T);return 0;
}

奇偶排序【算法赛】

题目考点: 自定义排序 思维

223
解题思路

  1. sort() 中的自定义排序规则
  2. 根据题目要求偶数一定在奇数后面然后我们将元素区分奇偶,分别进行排序然后分别打印得到答案

代码

#include<bits/stdc++.h>
using namespace std;bool cmp(int a,int b) {if ((a % 2 == 0 && b % 2 == 0) || (a % 2 != 0 && b % 2 != 0)) {return a < b;} else {if (a % 2 == 0) {return false;} else {return true;}}
}int main()
{int n; std::cin >> n;std::vector<int>ans(n);for (int i = 0; i < n; i++) {std::cin >> ans[i];}sort(ans.begin(),ans.end(),cmp);for (int i = 0; i < n; i++) {std::cout << ans[i] << " ";}return 0;
}

可结合的元素对【算法赛】

题目考点: lowbit

在这里插入图片描述

暴力解法:超时

#include <bits/stdc++.h>
using namespace std;
using ll = long long;int lowbit(int a) {return (a) & -(a);
}int main()
{int n; std::cin >> n;std::vector<int>ans(n + 10);for (int i = 1; i <= n; i++) {std::cin >> ans[i];}ll ANS = 0;for (int i = 1; i <= n; i++) {for (int j = i + 1; j <= n; j++) { if ((lowbit(ans[i] + ans[j])) == (ans[i] + ans[j])) ANS++;}}std::cout << ANS << std::endl;return 0;
}

最终解法: 暂时没有理解

#include<bits/stdc++.h>
#define int long long
using namespace std;int a[100010];
unordered_map<int,int> h;signed main()
{int n;cin>>n;for(int i=1;i<=n;i++)cin>>a[i];sort(a+1,a+n+1);int res=0;for(int i=1;i<=n;i++){for(int k=1;k<=30;k++)//枚举所有可能的k{int aj=(1<<k)-a[i];//aj为能与a[i]配对的数if(h.find(aj)!=h.end())res+=h[aj];//能找到aj}h[a[i]]++;}cout<<res;return 0;
}

兽之泪【算法赛】

题目考点: 优先队列

在这里插入图片描述

解题思路:我尚未理解清楚
在这里插入图片描述

代码

#include <bits/stdc++.h>
using namespace std;
#define int long long
using Pair=pair<int,int>;
const int N=2e5+9;
int a[N];
int b[N];
set<int>s;
priority_queue<Pair,vector<Pair>,greater<Pair>>pq;signed  main()
{int n,k;cin>>n>>k;int t=k;for(int i=1;i<=n;i++){cin>>a[i]>>b[i];if(i<=n-1)pq.push({a[i],i});}int ans=0,id;while(t--){if(s.size()==n-1)pq.push({a[n],n});ans+=pq.top().first;id=pq.top().second;int t=id;s.insert(id);pq.pop();pq.push({b[id],id});}int res=0;int mn=INT_MAX;for(int i=1;i<=n;i++){res+=a[i];mn=min(mn,b[i]);}res+=(k-n)*mn;cout<<min(ans,res);return 0;
}

矩阵X【算法赛】

题目考点: 思维 队列 数组 滑动窗口 二维前缀和

在这里插入图片描述
代码

#include <iostream>
#include <vector>
#include <queue>
using namespace std;
int n,m;
int np,mp;
long long ans;
int main()
{cin>>n>>m;cin>>np>>mp;bool flag=false;if(n>m)swap(n,m),swap(np,mp),flag=true;vector<vector<int>> v(n+1,vector<int>(m+1));vector<vector<long long>> sum(n+1,vector<long long>(m+1));vector<vector<int>> maxn(n+1,vector<int>(m+1));vector<vector<int>> minn(n+1,vector<int>(m+1));if(flag==false){for(int i=1;i<=n;++i)for(int j=1;j<=m;++j)cin>>v[i][j];}else{for(int i=1;i<=m;++i)for(int j=1;j<=n;++j)cin>>v[j][i];}for(int i=1;i<=n;++i){for(int j=1;j<=m;++j){sum[i][j]=sum[i-1][j]+sum[i][j-1]-sum[i-1][j-1]+v[i][j];}}queue<int> q;for(int i=1;i<=n;++i){while(!q.empty())q.pop();for(int j=1;j<=m;++j){while(!q.empty()&&q.front()+mp<=j)q.pop();while(!q.empty()&&v[i][j]>v[i][q.front()])q.pop();q.push(j);if(j-mp+1>=1)maxn[i][j-mp+1]=v[i][q.front()];}}for(int i=1;i<=n;++i){while(!q.empty())q.pop();for(int j=1;j<=m;++j){while(!q.empty()&&q.front()+mp<=j)q.pop();while(!q.empty()&&v[i][j]<v[i][q.front()])q.pop();q.push(j);if(j-mp+1>=1)minn[i][j-mp+1]=v[i][q.front()];//cout<<minn[i][j-mp+1]<<' ';}//cout<<endl;}for(int i=1;i<=n-np+1;++i){for(int j=1;j<=m-mp+1;++j){for(int k=i;k<=i+np-1;++k){maxn[i][j]=max(maxn[i][j],maxn[k][j]);minn[i][j]=min(minn[i][j],minn[k][j]);}//cout<<maxn[i][j]<<' '<<minn[i][j]<<' ';long long temp=sum[i+np-1][j+mp-1]-sum[i-1][j+mp-1]-sum[i+np-1][j-1]+sum[i-1][j-1];ans=max(ans,temp*(maxn[i][j]-minn[i][j]));}//cout<<endl;}cout<<ans<<endl;
}

学习产出:

  • 技术笔记 2 遍
  • CSDN 技术博客 3 篇
  • 习的 vlog 视频 1 个

在这里插入图片描述

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

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

相关文章

解锁Redis宝藏:探索Redis哈希(Hash)的神奇世界!

Redis 哈希(Hash)是一种灵活且功能强大的数据结构&#xff0c;它可以存储多个字段和对应的值&#xff0c;适用于存储对象。了解 Redis 哈希的基本命令、示例和使用方法&#xff0c;以及常见的应用场景&#xff0c;将帮助您更好地利用 Redis 的强大功能。 Redis 哈希的基本命令…

AI辅助研发正在成为造福人类的新生科技力量

目录 1.AI用于药物研发 &#xff08;1&#xff09;药物靶点预测&#xff1a; &#xff08;2&#xff09;药物分子设计&#xff1a; &#xff08;3&#xff09;药物筛选&#xff1a; &#xff08;4&#xff09;药效和安全性预测&#xff1a; &#xff08;5&#xff09…

C#四部曲(知识补充)

Unity跨平台原理 .Net相关 只要编写的时候遵循.NET的这些规则&#xff0c;就能在.NET平台下通用 各种源码→根据.NET规范编写→(虚拟机)生成CIL中间码(保存在程序集中)→转成操作系统原代码 跨语言← 跨平台↓ Unity跨平台原理&#xff08;Mono&#xff09; c#脚本→MonoC#编…

CCCorelib 点云曲面特征(CloudCompare内置算法库)

文章目录 一、简介二、实现代码三、实现效果参考资料一、简介 这里基于每个点的邻域协方差来获取点云中具有的曲面几何特征的点,计算方式如下图所示: 二、实现代码 // CloudCompare #include <CCCoreLib/PointCloudTpl.h> #include <CCCoreLib/

QT6.6下android编译及调用自定义so库方法

一.问题概述 最近需要把QT程序从5.12的桌面环境移植到QT6.6的android下,项目中有很多DLL库要重新编译为so文件,移植到android环境然后调用,中间有很多坑,虽然大体和桌面系统用法相同,但细节上还是有区别的,尤其是so库的调用方法上,过程中也是debug了两天才解决,如果你也…

husky 检查commit

1 . Package.json 安装以下插件 "commitlint/cli": "^17.4.4", "commitlint/config-conventional": "^17.4.4", "core-js": "^3.6.4", "custom-event-polyfill": "^1.0.7", "fetch-…

使用 PlayFab 服务器托管的 5 个步骤

在本教程中,你将了解如何使用 Unity、镜像网络和 PlayFab 服务器托管来构建在线多人游戏。玩家不能再位于同一个本地网络上。他们将连接到托管在云中的专用服务器,这使得他们即使相距很远也可以一起玩。 架构概述 下图显示了我们将构建的架构。 玩家将使用他们的客户端并连…

2024年G3锅炉水处理证模拟考试题库及G3锅炉水处理理论考试试题

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 2024年G3锅炉水处理证模拟考试题库及G3锅炉水处理理论考试试题是由安全生产模拟考试一点通提供&#xff0c;G3锅炉水处理证模拟考试题库是根据G3锅炉水处理最新版教材&#xff0c;G3锅炉水处理大纲整理而成&#xff0…

读算法的陷阱:超级平台、算法垄断与场景欺骗笔记08_行为歧视

1. 常见的报价方式 1.1. 水滴定价&#xff08;Drip Pricing&#xff09; 1.1.1. 用一个较低的初始价格吸引消费者入局&#xff0c;之后再不断收取附加费用 1.2. 打折促销 1.2.1. 在一个远被高估的原价上制造折扣价格的魅力 1.2…

Hive面经

hive原理 Hive 内部表和外部表的区别Hive 有索引吗运维如何对 Hive 进行调度ORC、Parquet 等列式存储的优点数据建模用的哪些模型&#xff1f;1. 星型模型2. 雪花模型3. 星座模型 为什么要对数据仓库分层&#xff1f;使用过 Hive 解析 JSON 串吗sort by 和 order by 的区别数据…

spring cloud负载均衡算法,类型

1、轮询法 将请求按顺序轮流地分配到后端服务器上&#xff0c;它均衡地对待后端的每一台服务器&#xff0c;而不关心服务器实际的连接数和当前的系统负载。 2、随机法 通过系统的随机算法&#xff0c;根据后端服务器的列表大小值来随机选取其中的一台服务器进行访问。由概率统…

linux 系统下在终端中切换base环境

Linux 系统下切换base环境 1. 查看当前conda下已安装环境 conda info --envs 2. 切换到另一环境可以使用 conda activate env_name 3. 想要返回base环境&#xff0c;可使用 conda deactivate

【MySQL 系列】MySQL 语句篇_DCL 语句

DCL&#xff08; Data Control Language&#xff0c;数据控制语言&#xff09;用于对数据访问权限进行控制&#xff0c;定义数据库、表、字段、用户的访问权限和安全级别。主要关键字包括 GRANT、 REVOKE 等。 文章目录 1、MySQL 中的 DCL 语句1.1、数据控制语言--DCL1.2、MySQ…

自动化运维工具Ansible

一.Ansible基本内容 1.定义 Ansible是基于模块工作的&#xff0c;只是提供了一种运行框架&#xff0c;本身没有完成任务的能力&#xff0c;真正操作的是Anisble的模块。每个模块都是独立的、实现了批量系统配置、批量程序部署、批量运行命令等功能。 2.特点与优势 优势&…

【Python爬虫神器揭秘】手把手教你安装配置Scrapy,高效抓取网络数据

1、 引言 在大数据时代&#xff0c;网络上的信息犹如海洋般浩瀚。想要在这片海洋里挖掘宝藏&#xff0c;一款强大的工具必不可少。今天我们要带大家深入探索的就是Python界鼎鼎大名的爬虫框架——Scrapy。无论你是数据分析师、研究员还是开发者&#xff0c;学会利用Scrapy来自…

基于单片机的IC 卡门禁系统设计

摘要:针对传统门锁钥匙易丢失、配置不便和忘记携带等问题,提出了一种基于STC89C52 的IC 卡门禁系统设计。该系统以STC89C52 单片机为核心来控制电子锁模块的开关。主要过程是由RFID 模块读取IC卡ID 并通过串口发送至STC89C52 单片机模块,STC89C52 单片机模块可以实现在线对I…

如果电脑缺少dll文件怎么解决?如何快速解决dll丢失问题

最近有小伙伴问电脑老是缺少dll文件&#xff0c;这种问题到底要怎么去解决呢&#xff1f;其实这种现象是正常的&#xff0c;为啥说正常呢&#xff0c;下面我们会给大家详细的讲解dll为啥会缺少&#xff0c;然后还会讲解电脑缺少dll文件怎么解决的方法&#xff0c;好了&#xff…

ARM学习(25)链接装载高阶认识

ARM学习&#xff08;25&#xff09;链接装载高阶认识 1、例子引出 笔者先引入几个编译链接的例子来介绍一下&#xff1a; 声明无效&#xff1a;declared implicitly&#xff1f;&#xff0c;属于编译错误还是链接错误&#xff1f; 编译阶段的错误&#xff0c;属于编译错误&am…

python中的四大内置容器

容器&#xff1a; 是一种可以存放多个元素的数据类型 补充变量无法存储大量数据的缺陷 python提供的容器 列表&#xff0c;集合&#xff0c;元组&#xff0c;字典 列表--list 线性表&#xff08;常见线性表-数组 栈 链表 队列&#xff09;---基于链表的数据结构实现的 注…

深度关系--平衡双方影响力避免刺痛变成剧痛针对行为给予反馈有效反馈的挑战

平衡双方的影响力 建立深度关系&#xff0c;要考虑双方的需求&#xff0c;使双方的需求以相对平衡的方式得到满足。 关系要想持久&#xff0c;影响力就必须达到平衡或匹配 自我表露、支持、信任以及进一步的表露——这种循环是平衡的基础 无论人与人之间的了解有多深&#x…