蓝桥杯第22场小白入门赛

devtools/2024/11/20 23:37:47/

刚好牛客周赛和蓝桥杯周赛时间撞了,于是毅然决然选择了打牛客,结局是本蒟蒻被牛客薄纱/(ㄒoㄒ)/~~

好吧,然后第二天就来水一水蓝桥杯了(bushi),小白入门赛和前几次一样,6道题只能写5道(什么时候能让我AK,AK了我就不是小白了)


目录

1.变身

2.消灭卡片

​编辑 ​编辑

3.招募队员

4.能量晶石 

5.缺失的环节

6.召唤帝皇侠

 





1.变身

相信大家闭着眼睛也能写出来 /(ㄒoㄒ)/~~

 cout<<5<<endl;

2.消灭卡片

 

思路 :如果能被5整除就直接输出n/5,反之我们对3得个数从0开始枚举,如果n-3*i能够被5整除,就直接输出i+(n-3*i)/5,如果循环了10的6次方还没有那就直接输出-1,为什么要用3枚举呢,是因为我们要尽可能的是5的贡献更大,即组成这个数3的个数尽可能少,5的个数尽可能多,同理用5枚举的话要从大到小枚举,但这样耗时往往会比枚举3的多。

Code:

#include <iostream>
using namespace std;
int main()
{// 请在此输入您的代码int t;cin>>t;while(t--){int sum=0;int n;cin>>n;if(n%5==0){cout<<n/5<<endl;}else{int mind=1e9;for(int i=0;i<=n/3;i++){int yu=n-3*i;if(yu%5) continue;else{mind=min(mind,i+yu/5);break;}}if(mind==1e9) cout<<-1<<endl;else cout<<mind<<endl;}}return 0;
}

3.招募队员

思路: 就是计算一个数字最多会连续出现几次,模拟就行了

Code:

#include <iostream>
#include <unordered_map>using namespace std;constexpr  int N = 1e5+5;int cnt[N],ans[10],a[N][10];
unordered_map<int,int> mp;
int main()
{// 请在此输入您的代码int n;cin>>n;for(int i=1;i<=n;i++){int b[6]={0};for(int j=1;j<=5;j++){cin>>a[i][j];if(mp[a[i][j]]&&!b[a[i][j]]){cnt[a[i][j]]++;ans[a[i][j]]=max(ans[a[i][j]],cnt[a[i][j]]);}if(!mp[a[i][j]]){cnt[a[i][j]]=1;mp[a[i][j]]= 1;ans[a[i][j]]=max(ans[a[i][j]],cnt[a[i][j]]);}b[a[i][j]]=1;}for(int j=1;j<=5;j++)if(!b[j]){mp[j]=0;cnt[j]=0;}}for(int i=1;i<=5;i++) cout<<ans[i]<<' ';return 0;
}

4.能量晶石 

思路 :贪心+排序。要使次数最小,则数组的最大值要尽可能小,所以先将数组从小到大排序,从后面开始遍历,每次用后面的数字减去a[0],就是当前这个人要跑的次数,然后a[0]的大小就与当前这个数一样,而其他人增加的数就是这两个数的差值,所以我们只需要累加数组的所有数字更新后与a[0]的差值即可。

Code:

#include <iostream>
#include <vector>
#include <algorithm>
#define int long long
using namespace std;constexpr int N = 1e5+5;int a[N],n;int32_t main()
{// 请在此输入您的代码cin>>n;vector<int> v(n);for(auto &t:v) cin>>t;sort(v.begin(),v.end());//v.erase(unique(v.begin(),v.end()),v.end());int d=0;int len=v.size();for(int i=1;i<len;i++){v[len-i]+=d;d+=v[len-i]-v[0];;v[0]=v[len-i];}cout<<d;return 0;
}

5.缺失的环节

思路: 因为是连续的字符串,所以我们只需要从0开始枚举,每次将十进制转换成二进制字符串,然后判断这个二进制字符串是不是S的子串,如果是的话说明S的某个区间可以组成这个数,反之则是S不存在的数。

Code:

#include <iostream>
#include <cstring>
#include <algorithm>
#define int long long
using namespace std;
int32_t main()
{// 请在此输入您的代码int n;cin>>n;string s;cin>>s;reverse(s.begin(),s.end());int sum=0;for(int i=0;i<=1000000;i++){string temp="";if(i==0){temp+="0";}else{int a=i;while(a){temp+=a%2+'0';a/=2;}while(temp.back()=='0'&&temp.size()>1) temp.pop_back();}if(s.find(temp)==-1){cout<<i;break;} }return 0;
}

6.召唤帝皇侠

思路 :数学。这里附上某位大佬的题解

Code:

#include <iostream>
#include <cmath>
#include <unordered_map>
#define int long long
using namespace std;
constexpr int mod=998244353;int32_t main()
{// 请在此输入您的代码int t;cin>>t;while(t--){int x;cin>>x;int ed=floor(sqrt(x));int sum=0;sum=((sum+ed*ed%mod-1)*ed%mod)%mod;sum=(sum+ed*ed%mod)%mod;if(ed*ed+ed<=x){sum=(sum+ed*ed+ed%mod)%mod;} if(ed*ed+2*ed<=x)sum=(sum+ed*ed%mod+2*ed%mod)%mod;cout<<sum<<endl;}return 0;
}


http://www.ppmy.cn/devtools/135607.html

相关文章

【前端工程化】抽离CSS文件,告别style-loader️(8)

在 Webpack 中&#xff0c;默认情况下&#xff0c;CSS 代码会被 css-loader 转换后&#xff0c;交给 style-loader 处理。style-loader 的工作方式是将样式插入到 <style> 标签中&#xff0c;这对于开发模式来说是非常方便的&#xff0c;因为它可以实现热更新。但在生产环…

常用Adb 命令

# 连接设备 adb connect 192.168.10.125# 断开连接 adb disconnect 192.168.10.125# 查看已连接的设备 adb devices# 安装webview adb install -r "D:\webview\com.google.android.webview_103.0.5060.129-506012903_minAPI23(arm64-v8a,armeabi-v7a)(nodpi)_apkmirror.co…

css3中的多列布局,用于实现文字像报纸一样的布局

作用&#xff1a;专门用于实现类似于报纸类的布局 常用的属性如下&#xff1a; 代码&#xff1a; <!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevic…

《深入理解 Spring MVC 工作流程》

一、Spring MVC 架构概述 Spring MVC 是一个基于 Java 的轻量级 Web 应用框架&#xff0c;它遵循了经典的 MVC&#xff08;Model-View-Controller&#xff09;设计模式&#xff0c;将请求、响应和业务逻辑分离&#xff0c;从而构建出灵活可维护的 Web 应用程序。 在 Spring MV…

PyCharm 中的【控制台】和【终端】的区别

pycharm专业版-使用 PyCharm 中的【控制台】和【终端】的区别如下&#xff1a; 1.环境&#xff1a;控制台是 PyCharm 的内部环境&#xff0c; 终端 是操作系统的命令行界面。 2.功能&#xff1a;控制台可以运行 Python 代码&#xff0c;并显示执行结果&#xff1b; 终端可以…

【flutter】flutter2升级到3.

文章目录 背景flutter2-3升级的修改之处界面效果其它 背景 以这个 https://github.com/aa286211636/Flutter_QQ 为例子&#xff0c; 升级下看看 flutter2-3升级的修改之处 flatButton变为TextButton设备屏幕尺寸获取: Screen.width(context)变为MediaQuery.of(context).size…

SpringCloud处理Websocket消息过长自动断开连接

SpringCloud处理Websocket消息过长自动断开连接 问题描述 近期实现了客户端订阅Websocket后&#xff0c;服务端定期向客户端推送相关设备消息的功能&#xff0c;在本地测试没有问题&#xff0c;上线后却发现订阅设备数量超过一定数量后Websocket就会自动断开连接 报错日志 ja…

Python 学习笔记:集合(Set)

一、概述 集合&#xff08;Set&#xff09;是 Python 中的一种内置数据结构&#xff0c;主要用于存储唯一的元素。集合的主要特点包括&#xff1a; 无序性&#xff1a;集合中的元素没有固定的顺序&#xff0c;不能通过索引访问。唯一性&#xff1a;集合中的每个元素都是唯一的…