蓝桥杯 第 1 场 小白入门赛
目录
1.蘑菇炸弹
2.构造数字
3.小蓝的金牌梦
4.合并石子加强版
5.简单的LIS问题
6.期望次数
1.蘑菇炸弹
我们直接依照题目 在中间位置的数进行模拟即可
void solve(){cin>>n;vector<int> a(n+1);for(int i=1;i<=n;i++) cin>>a[i];int ans=0;for(int i=2;i<n;i++){if(a[i]>=a[i-1]+a[i+1]) ans++;}cout<<ans<<endl;return ;
}
2.构造数字
我们需要构造的数字最大,由于数位已经告诉我们,所以明显的有一个贪心的策略:从最高位置开始从最大的数开始遍历是否可以填可以填减去看下一位即可
void solve(){cin>>n>>m;for(int i=1;i<=n;i++){for(int j=9;j>=0;j--){if(m>=j){cout<<j;m-=j;break;}} }return ;
}
3.小蓝的金牌梦
我们有一个错误的想法就是找出最大的质数x然后直接求长度x的即可,为什么是错误的呢?因为题目中的元素带有负数,所以我们要求出所有满足的来比较最大值,我们可以考虑使用线性筛来求出所有的质数然后前缀和来求解即可
vector<int> primes;
int cnt;void solve(){cin>>n;vector<LL> a(n+5);for(int i=1;i<=n;i++) cin>>a[i],a[i]+=a[i-1];auto get = [&](){vector<bool> st(n+5);for(int i=2;i<=n;i++){if(!st[i]){primes.push_back(i);cnt++;}for(int j=0;primes[j]<=n/i;j++){st[i*primes[j]]=true;if(i%primes[j]==0) break;}}};get();LL ans=-1e18;// 注意初始化防止过小for(int i=1;i<=n;i++){for(auto&v:primes){if(i<v) break;ans=max(ans,a[i]-a[i-v]);}}cout<<ans<<endl;return ;
}
4.合并石子加强版
首先我们不要直接先入为主认为是区间dp,区间dp的时间复杂度一般是也不现实,我们接着找是不是具有什么性质找最简模型
a b c ->
1: 先左后右 a*b+(a+b)*c = a*b+a*c+b*c
2: 先右后左 b*c+(b+c)*a = a*b+a*c+b*c
我们可以发现无论左右结果不会变的那么也就是我们这个结果是不受操作所影响的,所以我们选择最优的操作直接从左到右即可,注意数据范围很大所以我们考虑要使用__int128来处理
void solve(){cin>>n;vector<LL> a(n+5);__int128 res=0;for(int i=1;i<=n;i++) cin>>a[i];LL pre=a[1];for(int i=2;i<=n;i++){res+=a[i]*pre;pre+=a[i];}function<void(__int128)> print = [&](__int128 res){if(res>9) print(res/10);putchar(res%10+'0');};print(res);return ;
}
5.简单的LIS问题
题目意思很简单修改一个数然后为然后求最长上升子序列,我们可以发现数据范围是
3e3可以使用的
接着就是找一个数修改 我们明显的可以划分为前面和后面来区别,所以
我们求一个前面的最长上升子序列,倒着求一个最长下降子序列拼接,接着考虑单独的最长子序列操作,对于上升子序列把后面的一个数改成比自己大即可,对于改前面的数就需要注意是不是>0(题目特殊限制)
void solve(){cin>>n;vector<int> a(n+5),dp1(n+5,1),dp2(n+5,1);for(int i=1;i<=n;i++) cin>>a[i];for(int i=1;i<=n;i++)for(int j=1;j<i;j++)if(a[j]<a[i]) dp1[i]=max(dp1[i],dp1[j]+1);for(int i=n;i>=1;i--)for(int j=n;j>i;j--)if(a[i]<a[j]) dp2[i]=max(dp2[i],dp2[j]+1);int ans=dp1[n];for(int i=1;i<=n;i++){for(int j=i+2;j<=n;j++){if(a[i]<=a[j]-2){ans=max(ans,dp1[i]+dp2[j]+1);}}if(i!=n) ans=max(ans,dp1[i]+1);if(i!=1 && a[i]!=0) ans=max(ans,dp2[i]+1);}cout<<ans<<endl;return ;
}
考虑提升数据范围就使用nlogn同时需要存在来这个时候的最大或者最小值以及数量
void solve(){cin>>n;vector<int> a(n),A(n),B(n),cp(n),cl(n);for(auto&v:a) cin>>v;vector<int> pre,last;for(int i=0;i<n;i++){int v=a[i];if(pre.empty()||v>pre.back()) pre.push_back(v);else pre[lower_bound(pre.begin(),pre.end(),v)-pre.begin()]=v;A[i]=pre.back();// 表示到这个点的时候的最大值是多少cp[i]=pre.size();// 表示到这个点的时候最长上升子序列的长度都是多少}reverse(a.begin(),a.end());int ans=pre.size();for(int i=0;i<n;i++){int v=a[i];if(last.empty()||v<last.back()) last.push_back(v);else last[lower_bound(last.begin(),last.end(),v,greater<int>())-last.begin()]=v;B[n-i-1]=last.back();//表示到这个点的最小值是多少cl[n-i-1]=last.size();// 表示这个点的长度是多少}for(int i=0;i<n-1;i++){if(i && A[i-1]<=B[i+1]-2){ans=max(ans,cp[i-1]+cl[i+1]+1);}ans=max(ans,cp[i]+1);if(i && B[i]!=0) ans=max(ans,cl[i]+1);}cout<<ans<<endl;return ;
}
6.期望次数
我们可以知道和是一个概率dp,依照题目意思我们定义状态为当前 为x是期望为dp[x](x==i)
1.当i>=m 时 dp[i]=0;
2.当i<m时
进行变形之后得到答案
其中sum是之和,接着就可以按照公式倒着递推即可(注意逆元之类的操作)
LL qmi(LL a,LL b,LL p){LL res=1;while(b){if(b&1) res=res*a%p;b>>=1;a=a*a%p;}return res;
}LL inv(LL x){return qmi(x,mod-2,mod);
}void solve(){cin>>n>>m;vector<LL> dp(m);vector<int> a(n);LL sum=0;for(int i=1;i<=n;i++) cin>>a[i],sum+=a[i];for(int i=m-1;i>=1;i--){for(int j=2;j<=n&&i*j<m;j++){dp[i]+=a[j]*dp[i*j];dp[i]%=mod;}(dp[i]+=sum)%mod;dp[i]=dp[i]*inv(sum-a[1])%mod;} cout<<dp[1]<<endl;return ;
}
相关文章:
蓝桥杯 第 1 场 小白入门赛
目录 1.蘑菇炸弹 2.构造数字 3.小蓝的金牌梦 4.合并石子加强版 5.简单的LIS问题 6.期望次数 1.蘑菇炸弹 我们直接依照题目 在中间位置的数进行模拟即可 void solve(){cin>>n;vector<int> a(n1);for(int i1;i<n;i) cin>>a[i];int ans0;for(int i2;i…...
飞天使-linux操作的一些技巧与知识点5-expect与docker便捷命令
expect 主要使用场景不输入账户密码的多 yum install -y expect 则可以安装上 #!/usr/bin/expect -f set username “root” set password “123456” spawn /bin/bash send “cd /data/container/\r” expect "$ " # 等待命令提示符 send “git pull\r” expect…...
编曲学习:和声音程 调式体系 唱名法 调式调性
34届和声音程 调式体系 唱名法 调式调性https://app8epdhy0u9502.pc.xiaoe-tech.com/live_pc/l_65af994be4b064a8cb1c3a5f?course_idcourse_2XLKtQnQx9GrQHac7OPmHD9tqbv 34届独立音乐人编曲训练营https://app8epdhy0u9502.pc.xiaoe-tech.com/p/t_pc/course_pc_detail/camp_p…...
【大数据】Flink 架构(四):状态管理
《Flink 架构》系列(已完结),共包含以下 6 篇文章: Flink 架构(一):系统架构Flink 架构(二):数据传输Flink 架构(三):事件…...
执行rpm安装命令的时候抛出异常:rpmdb BDB0113 Thread/process
问题现象 错误:rpmdb: BDB0113 Thread/process 66126/140498505373504 failed: BDB1507 Thread died in Berkeley DB library 错误:db5 错误(-30973) 来自 dbenv->failchk:BDB0087 DB_RUNRECOVERY: Fatal error, run database recovery 错…...
Android 在WebView中加载H5传递图片
最近h5开发一个编译器,要在手机上显示,需要获取手机上的图片,使用webview不能直接到文件管理拿取,还需要对webview做处理,做个记录,方便以后使用; public ValueCallback<Uri[]> mUploadMe…...
图的学习
图的基本概念和术语 图的定义:图是由顶点的有穷非空集合和顶点之间的边的集合组成的,G表示,V是图G中顶点的集合,E是图G中边的集合 无向图:任意两点的边都是无向边组成的图(无向边:(…...
空间数据分析入门POI与莫兰指数基础知识笔记
1. 空间分析与POI 1.1. 什么是POI POI是“Polnt of Information”的缩写,中文可以翻译为“信息点”。POI是地图上任何非地理意义的有意义的点,如商店、酒吧、加油站、医院、车站等。这些点通常包括名称、类别、经纬度和地址等基本信息。此外࿰…...
TortoiseSVN各版本汉化包下载
首先进入下载版本列表 1.下载地址:https://sourceforge.net/projects/tortoisesvn/files 2.选择自己版本进入 3.选择Language Packs进入,选择对应语言包下载。 4.在TortoiseSVN根目录下点击安装即可。 ...
STM32连接阿里云物联网平台
文章目录 引言一、STM32连接阿里云物联网平台思路二、ESP8266烧录固件三、使用AT指令连接阿里云物联网平台四、STM32环形串口缓冲区驱动程序五、STM32连接阿里云驱动程序 引言 连续写了两篇关于阿里云连接的文章,都是使用Arduino ESP8266 & Arduino ESP32的方式…...
力扣hot100 组合总和 回溯 剪枝 组合
Problem: 39. 组合总和 文章目录 思路复杂度💖 Code 思路 复杂度 时间复杂度: O ( n ) O(n) O(n) 空间复杂度: O ( n ) O(n) O(n) 💖 Code class Solution{List<List<Integer>> res new ArrayList<>();int x;// 全局targetin…...
代码随想录 Leetcode669. 修剪二叉搜索树
题目: 代码(首刷看解析 2024年1月31日): class Solution { public:TreeNode* trimBST(TreeNode* root, int low, int high) {if (!root) return root;if (root->val < low) {TreeNode* node trimBST(root->right,low,high);return…...
Redis系列-数据结构篇
数据结构 string(字符串) redis的字符串是动态字符串,类似于ArrayList,采用预分配冗余空间的方式减少内存的频繁分配。 struct SDS<T>{ T capacity; T len; byte flags; byte[] content; } 当字符串比较短时,…...
正则表达式(RE)
什么是正则表达式 正则表达式,又称规则表达式(Regular Expression)。正则表达式通常被用来检索、替换那些符合某个规则的文本 正则表达式的作用 验证数据的有效性替换文本内容从字符串中提取子字符串 匹配单个字符 字符功能.匹配任意1个…...
发布技术路线图!美国量子计算公司QuEra公开三年OKR
编辑丨慕一 编译/排版丨琳梦 卉可 深度好文:1100字丨8分钟阅读 近期,美国量子计算公司QuEra Computing宣布了一系列关于容错量子计算机的战略路线图,该路线图从2024年开始,最终目标是打造具有100纠错逻辑量子比特的系统。 在…...
Vue2:请求接口的两种方式axios和vue-resource
一、场景描述 前端和后端的交互,肯定是要发生接口调用的 这个时候,就要涉及前端如何向后端接口发送请求,获取数据 二、请求方式 1、axios方式(推荐) 这个方式本质就是ajax,底层就是对xhr(XMLHttpRequest)的封装 1、安装axios…...
扩展学习|商业智能和大数据分析的研究前景(比对分析)
文献来源: Liang T P , Liu Y H .Research Landscape of Business Intelligence and Big Data analytics: A bibliometrics study[J].Expert Systems with Applications, 2018, 111(NOV.):2-10.DOI:10.1016/j.eswa.2018.05.018. 信息和通信技术的快速发展导致了数字…...
『Docker入门指南』- 详细安装与配置教程,助你起航容器化世界!
引言 在探索云计算和自动化部署的时代,Docker以其独特的容器化技术站在了风口浪尖。如果你期待着无缝地将你的应用从一个环境迁移到另一个环境,那么Docker无疑是你的得力助手。但首先,我们得学会如何正确地安装和配置Docker。这篇文章将详细…...
如何提高http连接成功率?
问题 丢包、错包、乱包 高延迟 响应数据回来时间长,甚至大于客户端等待时间 带宽小 每次能够通信的内容较少,数据包越大受影响可能越大 网络断续 网络经常断开又连接 优化处理 采用TCP协议、实现长连接,采用长连接池,节省…...
Elasticsearch 中使用MustNot等同于不等于遇到的坑
1、在写关键词推荐时,需要把当前文章过滤掉,不能再推荐自己的文章,所以再es中需要用到 MustNot属性查询 /// <summary> /// 服务中心es检索 /// </summary> /// <param name="input"></param> /// <returns></…...
AI开发~OpenAI专家之路:构建企业级AI应用(第三部分·上)
第七部分:LLM应用测试与评估——确保质量的关键7.1 为什么需要测试LLM应用?大白话解释: 想象你开了一家餐厅,请了一位大厨(AI模型)来做菜。但是这位大厨有个特点——每次做出来的菜味道可能不太一样。有时候…...
对比直接使用官方 API 体验 Taotoken 聚合调用的便利之处
🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 对比直接使用官方 API 体验 Taotoken 聚合调用的便利之处 作为一名经常需要调用不同大语言模型的开发者,我曾长期在多个…...
【紧急预警】DeepSeek RAG场景下LLM推理限流失效高发!3类上下文长度引发的burst流量穿透问题及5分钟热修复方案
更多请点击: https://codechina.net 第一章:DeepSeek限流策略配置 DeepSeek模型服务在高并发场景下需通过精细化限流保障系统稳定性与服务质量。限流策略主要基于请求速率(RPS)、并发连接数及单用户配额三重维度进行控制…...
Wonder3D:如何用一张照片在3分钟内创建专业3D模型?
Wonder3D:如何用一张照片在3分钟内创建专业3D模型? 【免费下载链接】Wonder3D Single Image to 3D using Cross-Domain Diffusion for 3D Generation 项目地址: https://gitcode.com/gh_mirrors/wo/Wonder3D 你是否曾想过将一张普通的2D照片变成可…...
DeepSeek工具调用能力深度评测(实测12类插件+8种LLM上下文窗口下的成功率与延迟数据)
更多请点击: https://kaifayun.com 第一章:DeepSeek工具调用能力概览与评测方法论 DeepSeek系列大模型(如DeepSeek-V2、DeepSeek-Coder)原生支持结构化工具调用(Tool Calling),其核心机制基于J…...
LogExpert实战指南:5大核心功能深度探索Windows日志分析高效方案
LogExpert实战指南:5大核心功能深度探索Windows日志分析高效方案 【免费下载链接】LogExpert Windows tail program and log file analyzer. 项目地址: https://gitcode.com/gh_mirrors/lo/LogExpert LogExpert是一款专为Windows平台设计的图形化日志分析工具…...
如何在Windows上优雅安装安卓应用:APK安装器实用指南
如何在Windows上优雅安装安卓应用:APK安装器实用指南 【免费下载链接】APK-Installer An Android Application Installer for Windows 项目地址: https://gitcode.com/GitHub_Trending/ap/APK-Installer 你是否曾想过在Windows电脑上直接运行安卓应用&#x…...
商复形持续同调:从晶体周期性拓扑到材料带隙预测的实践
1. 项目概述:当拓扑学遇见材料科学在材料科学,尤其是新兴的二维钙钛矿研究领域,一个核心的挑战是如何从原子坐标这种看似简单的点云数据中,高效、准确地提取出与宏观物理性质(如电子带隙)强相关的特征。传统…...
小样本下分位数估计与置信区间构建实战指南
1. 项目概述:为什么小样本下的分位数估计如此重要?在机器学习项目的日常工作中,我们常常会面临一个尴尬的局面:模型训练好了,也跑出了几轮评估结果,比如准确率是92%,93%,91%…...
2026论文降AI率必备清单:AI率92%暴降至5%!实测10款AI智能降重工具!学生党狂喜!
2026 年各大高校和期刊平台的 AI 检测系统又升级了,知网 AIGC、维普 AI、万方智能检测三大平台的算法迭代速度越来越快,上个月能蒙混过关的改写方式,这个月直接就会被标红预警。单纯的同义词替换、语序调整早就不管用了,想要有效降…...
