logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

打卡信奥刷题(3446)用C++实现信奥题 P10412 「QFOI R2」钟声远带斜阳

题目要求通过增加元素、删除元素或交换元素(不能删空)三种操作,使得无限循环后的数列满足:存在某个起点,之后所有前缀和均非负。目标是找到最小代价。 方法思路: 初始检查:若数列总和非负,直接输出0。 排序处理:对数列升序排序,优先处理较小负数。 贪心策略:遍历数列,若总和仍为负,比较增加或删除当前元素的代价,选择更优的操作。 处理剩余元素:若仍有负数且之前未使用增加操作,需单独处理最后一个元素。 解

文章图片
#c++#开发语言#算法 +2
打卡信奥刷题(2020)用C++实现信奥 P10987 [蓝桥杯 2023 国 Python A] 火车运输

摘要 题目描述了一个火车运输问题:一辆火车有两节车厢,载重分别为A和B,要求选择N件钢材中的若干件装入车厢,使得总运输重量最大化。钢材不可分割,每件只能放入一个车厢。输入包含钢材数量N、两节车厢的载重A和B,以及各钢材的重量列表。输出最大可运输重量。示例展示了如何最优分配钢材使总重量达到18。题目提供了C++动态规划解法,使用二维数组dp[i][j]表示第一节车厢载重i、第二节载重j时的最大运输量

文章图片
#c++#开发语言#青少年编程 +2
打卡信奥刷题(2023)用C++实现信奥 P11005 [蓝桥杯 2024 省 Python B] 缴纳过路费

题目描述了一个城市网络问题,要求统计所有城市对中,最低路线成本介于给定范围[L,R]内的数量。路线成本定义为路径上最贵的边权值。 算法采用并查集实现Kruskal算法的变种,按边权从小到大排序并逐步合并连通块。在合并过程中,当边权在[L,R]范围内时,累加当前合并的两个连通块大小的乘积作为满足条件的城市对数量。这种方法高效地统计了所有符合条件的城市对,时间复杂度接近O(Mα(N))。输入规模可达1

文章图片
#c++#算法#开发语言 +2
打卡信奥刷题(2024)用C++实现信奥 P11006 [蓝桥杯 2024 省 Python B] 纯职业小组

这是一道关于蓝桥杯Python B组的编程题目,要求从不同职业的士兵中选出最少数量的士兵组成k个纯职业小组(每组3人)。题目提供了多组测试数据,每组给出各个职业的士兵数量,需要计算是否可以组成k组,并求出最少需要选择的士兵数。如果无法满足要求则输出-1。文章包含题目描述、输入输出格式、样例解释和一个C++实现代码。代码通过统计各职业士兵数量,计算所需最小士兵数,并处理可能无法满足的情况。后续还将分

文章图片
#c++#算法#开发语言 +2
打卡信奥刷题(2025)用C++实现信奥 P11046 [蓝桥杯 2024 省 Java B] 星际旅行

这篇文章介绍了蓝桥杯2024省赛Java B组的一道题目"星际旅行"的C++实现解法。题目描述了一个星际旅行问题,n个星球通过m道双向传送门连接,Q个盲盒每个规定起始星球和最多传送次数,要求计算能到达的不同星球数量的期望值。文章提供了样例输入输出解释和完整C++代码实现,使用BFS算法计算每个查询的到达星球数并求期望。代码通过邻接表存储图结构,使用广度优先搜索统计不超过规定步数

文章图片
#c++#算法#开发语言 +2
打卡信奥刷题(2165)用C++实现信奥 P12325 [蓝桥杯 2023 省 Java B] 数组分割

文章摘要 题目要求将数组分为两个子集,使两个子集元素和均为偶数。关键在于奇数的数量:若奇数个数为奇数,则无解;若为偶数且无奇数时,解为2^N种;否则解为2^(N-1)种。C++实现通过统计奇数个数,利用快速幂计算结果,并对1e9+7取模。样例1因两个偶数有4种分法,样例2因奇数个数为1无解。算法时间复杂度O(T*N),适用于大规模数据。

文章图片
#c++#开发语言#算法 +2
打卡信奥刷题(2166)用C++实现信奥 P12327 [蓝桥杯 2023 省 Java B] 蜗牛

题目摘要:蜗牛从坐标系原点出发,需到达第n根竹竿底部。在x轴移动速度为1单位/秒,竹竿上爬行速度为0.7(上)和1.3(下)单位/秒。竹竿间有传送门,可瞬间转移。计算蜗牛到达目的地的最短时间。 输入包括竹竿数量n、横坐标x数组、传送门高度参数a和b数组。输出四舍五入保留两位小数的最短时间。 样例输入3根竹竿,输出最短时间4.20秒。C++实现采用动态规划,考虑两种状态(在x轴或竹竿上)的最优解。

文章图片
#c++#开发语言#算法 +2
打卡信奥刷题(2171)用C++实现信奥 P12370 [蓝桥杯 2022 省 Python B] 技能升级

本文介绍了蓝桥杯2022省赛Python B组的一道技能升级题目。题目要求计算在有限次技能升级中能获得的最大攻击力提升。通过分析技能升级的递减规律,使用二分查找确定最优升级方案,并计算总攻击力。C++实现代码展示了如何高效处理大规模数据,适用于不同规模的评测用例。文章还提供了输入输出样例和解题思路,适合算法竞赛选手参考学习。

文章图片
#c++#开发语言#算法 +2
打卡信奥刷题(2172)用C++实现信奥 P12380 [蓝桥杯 2023 省 Python B] 管道

本文介绍了蓝桥杯2023省赛Python B组的一道管道问题。题目要求计算管道所有传感器检测到水流的最早时间。管道被划分为若干段,每个阀门在特定时间开启并扩散水流。通过二分查找算法确定满足全覆盖条件的最小时刻。C++实现中处理了输入参数,使用二分法在合理范围内搜索解,并输出结果。该解法适用于大规模数据,符合题目对时间和空间复杂度的要求。文章还提到了后续将继续分享算法竞赛相关的编程实现和比赛经验。

文章图片
#c++#开发语言#算法 +2
打卡信奥刷题(2170)用C++实现信奥 P12369 [蓝桥杯 2022 省 Python B] 全排列的价值

本文介绍了一个关于全排列价值的算法问题。题目要求计算1到n全排列中所有排列的价值之和,其中每个排列的价值定义为所有元素前比它小的数的个数之和。通过数学推导发现,总和公式为n!n(n-1)/4 mod 998244353。C++实现使用了预处理阶乘和快速幂求逆元的方法,能够高效处理n≤1e6的大数据量。样例输入3得到输出9,输入2022得到593300958,验证了算法的正确性。该解法适用于蓝桥杯等

文章图片
#c++#开发语言#算法 +2
    共 371 条
  • 1
  • 2
  • 3
  • 38
  • 请选择