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

在这里插入图片描述

🔥博客介绍`: 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.rhkb.cn/news/276355.html

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

相关文章

QMI8658芯片I2C驱动开发指南

这个芯片纯国产挺好用的&#xff0c;电路很好设计&#xff0c;我这垃圾焊功&#xff0c;纯手焊&#xff0c;&#xff0c;居然能用。 第一部分 硬件连接 画的很简陋&#xff0c;看看就可以了&#xff0c;这里I2C总线需要接10K上拉没有画出来&#xff0c;这个需要注意一下。 …

【C++初阶】C++入门(上)

C的认识 ①什么是C&#xff1f; ​ C语言是结构化和模块化的语言&#xff0c;适合处理较小规模的程序。对于复杂的问题&#xff0c;规模较大的程序&#xff0c;需要高度的抽象和建模时&#xff0c;C语言则不合适。 ​ 于是1982年&#xff0c;Bjarne Stroustrup&#xff08;本…

scrcpy远程投屏控制Android

下载 下载后解压压缩包scrcpy-win64-v2.4.zip scrcpy连接手机 1. 有线连接 - 手机开启开发者选项&#xff0c;并开启USB调试&#xff0c;连接电脑&#xff0c;华为手机示例解压scrcpy&#xff0c;在scrcpy目录下打开终端&#xff0c;&#xff08;或添加scrcpy路径为环境变…

Android和IOS应用开发-Flutter 应用中实现记录和使用全局状态的几种方法

文章目录 在Flutter中记录和使用全局状态使用 Provider步骤1步骤2步骤3 使用 BLoC步骤1步骤2步骤3 使用 GetX&#xff1a;步骤1步骤2步骤3 在Flutter中记录和使用全局状态 在 Flutter 应用中&#xff0c;您可以使用以下几种方法来实现记录和使用全局状态&#xff0c;并在整个应…

【Twinmotion】Twinmotion导入UE5

步骤 1. 在虚幻商城中安装“Datasmith Twinmotion导入器插件” 安装“面向虚幻引擎的Twinmotion内容” 2. 打开虚幻引擎&#xff0c;在插件中搜索“twinmotion”&#xff0c;勾选如下两个插件&#xff0c;然后重启虚幻引擎 3. 打开Twinmotion&#xff0c;随便添加一个物体 导出…

【创作者纪念日1095天3年】我的创作纪念日

&#x1f468;‍&#x1f393;博主简介 &#x1f3c5;CSDN博客专家   &#x1f3c5;云计算领域优质创作者   &#x1f3c5;华为云开发者社区专家博主   &#x1f3c5;阿里云开发者社区专家博主 &#x1f48a;交流社区&#xff1a;运维交流社区 欢迎大家的加入&#xff01…

【Git】error: bad signature 0xb86f1e1 和 bfatal: index file corrupt

一、问题 之前都好好的&#xff0c;今天执行 git add .的时候突然报错 报错原因翻译成中文&#xff1a;索引文件损坏 二、解决方法 方法1&#xff1a; 删除.git隐藏文件夹中的index文件 然后执行 git reset 重新生成index文件 git reset 方法2&#xff1a; 重新从远程克隆…

excel同类项合并求和怎么操作?

想必很多办公人士都熟悉excel这款软件&#xff0c;那么使用过程里&#xff0c;若想合并同类项数据并求和&#xff0c;具体是如何操作的呢&#xff1f;下面就是小编带来的excel合并同类项数据并求和的操作步骤&#xff0c;很简单哦&#xff0c;看完之后你也来试试吧! 先看一下原…

Jenkins插件Parameterized Scheduler用法

Jenkins定时触发构建的同时设定参数。可以根据不同的定时构建器设置不同参数或环境变量的值。可以设置多个参数。并结合when控制stage流程的执行。结合when和triggeredBy区分定时构建的stage和手动执行的stage。 目录 什么是Parameterized Scheduler&#xff1f;如何配置实现呢…

使用 ReclaiMe Pro 恢复任意文件系统(Win/Linux/MacOS)

天津鸿萌科贸发展有限公司是 ReclaiMe Pro 数据恢复软件授权代理商。 ReclaiMe Pro 是一个通用工具包&#xff0c;几乎可以用于从所有文件系统&#xff08;从 Windows 系列文件系统、Linux 和 MacOS&#xff09;中恢复数据。此外&#xff0c;考虑到数据恢复工作的具体情况&…

python练习

1. 五个PPT上的界面打印【print、input函数】 #界面1 -登录 print(英雄商城登录界面) print(英雄联盟商城登录界面) print(~*~*~*~*~*~*~*~*~*~*~*~*~*) print(1.用户登录) print(2.新用户注册) print(3.退出系统) print(~*~*~*~*~*~*~*~*~*~*~*~*~*) input("(温馨提示)请…

Gitee配置SSH登录

一、背景 新入手的电脑&#xff0c;需要对Gitee上存放的项目进行更改上传&#xff0c;发现上传不了需要登录&#xff0c;便采用SSH密钥进行登录&#xff0c;防止远程管理工程中的信息泄露 二、前提 电脑已下载Git Bash工具&#xff0c;在项目下点击鼠标右键&#xff0c;进入…

为什么不直接用百度,要用AI呢

使用百度和其他搜索引擎与使用AI技术&#xff08;如我这样的人工智能助手&#xff09;各有优势&#xff0c;选择使用哪一种往往取决于具体的需求和情境。 1.使用AI技术的几个原因 1. 定制化体验&#xff1a;AI技术可以提供更加个性化的服务。例如&#xff0c;AI助手可以根据您…

如何使用CloudRecon扫描Web应用程序并从SSL证书中发现有效资产

关于CloudRecon CloudRecon是一款功能强大的Web应用程序资产扫描与识别工具&#xff0c;该工具可以帮助广大研究人员对目标Web应用程序执行扫描&#xff0c;并从证书中识别出有价值的资产数据。 CloudRecon本质上是一个工具集&#xff0c;由三个组件组成&#xff0c;可以帮助红…

深入了解 Spring boot的事务管理机制:掌握 Spring 事务的几种传播行为、隔离级别和回滚机制,理解 AOP 在事务管理中的应用

&#x1f389;&#x1f389;欢迎光临&#xff0c;终于等到你啦&#x1f389;&#x1f389; &#x1f3c5;我是苏泽&#xff0c;一位对技术充满热情的探索者和分享者。&#x1f680;&#x1f680; &#x1f31f;持续更新的专栏《Spring 狂野之旅&#xff1a;从入门到入魔》 &a…

ElementUI两个小坑

1.form表单绑定的是一个对象&#xff0c;表单里的一个输入项是对象的一个属性之一&#xff0c;修改输入项&#xff0c;表单没刷新的问题&#xff0c; <el-form :model"formData" :rules"rules" ref"editForm" class"demo-ruleForm"…

拆解Spring boot:Springboot为什么如此丝滑而简单?源码剖析解读自动装配

&#x1f389;&#x1f389;欢迎光临&#xff0c;终于等到你啦&#x1f389;&#x1f389; &#x1f3c5;我是苏泽&#xff0c;一位对技术充满热情的探索者和分享者。&#x1f680;&#x1f680; &#x1f31f;持续更新的专栏《Spring 狂野之旅&#xff1a;从入门到入魔》 &a…

【深度学习】线性回归

Linear Regression 一个例子线性回归机器学习中的表达评价函数好坏的度量&#xff1a;损失&#xff08;Loss&#xff09;损失函数&#xff08;Loss function&#xff09;哪个数据集的均方误差 (MSE) 高 如何找出最优b和w?寻找最优b和w如何降低损失 (Reducing Loss)梯度下降法梯…

Vue首屏优化方案

在Vue项目中&#xff0c;引入到工程中的所有js、css文件&#xff0c;编译时都会被打包进vendor.js&#xff0c;浏览器在加载该文件之后才能开始显示首屏。若是引入的库众多&#xff0c;那么vendor.js文件体积将会相当的大&#xff0c;影响首屏的体验。可以看个例子&#xff1a;…

Elasticsearch使用Kibana进行基础操作

一、Restful接口 Elasticsearch通过RESTful接口提供与其进行交互的方式。在ES中&#xff0c;提供了功能丰富的RESTful API的操作&#xff0c;包括CRUD、创建索引、删除索引等操作。你可以用你最喜爱的 web 客户端访问 Elasticsearch 。事实上&#xff0c;你甚至可以使用 curl …