![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
文章平均质量分 77
旧林墨烟
惠州学院大四学生,热爱算法竞赛,获得蓝桥杯、天梯赛、ccpc、icpc等多项奖项,熟悉c++、java语言,目前处于求职状态
展开
-
惠州学院第二届大学生程序设计竞赛c++题解
按难度等级排序时间限制: 1.0s 内存限制:256.0MB【问题描述】给定 T 组测试样例每组样例给定整数 n,x,请输出区间 [1, n] 中能被 x 整除的最大整数。【输入格式】第一行输入一个整数T,代表一共有T组测试样例。(1 ≤ T ≤ 1000)接下来 T 行,每行两个整数 n, x。(1 ≤ x ≤ n ≤ 109 )【输出格式】对每一组输入,在一行中输出答案值。【样例输入】【样例输出】【方法一:二分搜索】一种直观的方法,可以通过二分枚举倍率的方法找到符合条件的最大倍率,x乘于原创 2024-03-16 17:00:56 · 2426 阅读 · 0 评论 -
2023第十四届蓝桥杯国赛 C/C++ 大学 B 组
第十四届蓝桥杯大赛软件赛决赛 C/C++ 大学 B 组,试题 A: 子 2023、试题 B: 双子数、试题 C: 班级活动、试题 D: 合并数列、试题 E: 数三角、试题 F: 删边问题、试题 G: AB 路线、试题 H: 抓娃娃、试题 I: 拼数字、试题 J: 逃跑。第十四届蓝桥杯大赛软件赛国赛 C/C++ 2023第十四届蓝桥杯国赛第十四届蓝桥杯大赛软件赛国赛 C/C++ 2023第十四届蓝桥杯国赛第十四届蓝桥杯大赛软件赛国赛 C/C++ 2023第十四届蓝桥杯国赛第十四届蓝桥杯大赛软件赛国赛 C/C+原创 2023-06-10 20:52:09 · 12195 阅读 · 47 评论 -
第十四届蓝桥杯省赛c/c++大学B组题解
第十四届蓝桥杯大赛软件赛省赛C/C++ 大学 B 组,日期统计、 01 串的熵、冶炼金属、飞机降落、接龙数列、岛屿个数、子串简写、整数删除、景区导游、砍树原创 2023-04-11 20:03:36 · 7977 阅读 · 17 评论 -
c++ 树状数组模板
如果不需要修改,先对数组做前缀和,再用差分就可以实现多次O(1)查询了,例如数组:int f[6]={0,1,2,3,4,5},前缀和数组就是pre[6]={0,1,3,6,10,15},求1~3的区间和就是pre[3]-pre[0]=6-0=6,4~5的区间和就是pre[5]-pre[3]=15-6=9。假如位置3~5加上了5,第一个树状数组f2[3]+=5,f2[6]-=5,第二个树状数组维护f[3]+=2*5,f1[6]-=5*5。前缀和,就单单是前缀和那么简单,并没有那么复杂。原创 2023-02-08 14:53:36 · 727 阅读 · 0 评论 -
c++ 旅行商问题(动态规划)
TSP,即旅行商问题,又称TSP问题(Traveling SalesmanProblem),是数学领域中著名问题之一。假设有一个旅行商人要拜访N个城市,他必须选择所要走的路径,路径的限制是每个城市只能拜访一次,而且最后要回到原来出发的城市。路径的选择目标是要求得的路径路程为所有路径之中的最小值。TSP问题是一个NPC问题。原创 2022-11-24 15:34:06 · 12899 阅读 · 14 评论 -
c++入门必学算法 质数筛
质数筛也叫素数筛,是求1到n之内素数的优化算法,质数筛有两种,埃氏筛和欧拉筛。埃氏筛的时间复杂度接近O(n*logn),而欧拉筛可以把复杂度降低到O(n),下面看两种算法的到底是如何一步步优化的吧埃氏筛的实现原理是比较简单的,使用的场景也比较广泛,但在个别的竞赛题中会卡这点时间,必须使用欧拉筛。欧拉筛理解的过程是有点难的,但在真正理解之后思路会非常清晰,看不懂就多看两遍加油咯!兄弟萌。原创 2022-11-14 14:55:25 · 6679 阅读 · 6 评论 -
c++ 图的重构识别
算法设计与分析实验,简单地理解,图的本质是一样的,只是表达的方式不同例如下图:它的同构图有:等等,可以发现,图的同构,实际也就是点的编号不同导致的,也就可以推导出,假如一个图能通过编号替换成为另一个图,那么这两个图就是同构的,否则就不是同构的二、图的表示方法图的表示方法有很多种,例如邻接表、邻接矩阵等等。显然地,图的同构用邻接矩阵表示比较方便。我们用两个图来当样例讲解该题我们思考一下,图2如何转换成图1呢?显然,将编号5改为1,将编号4改为3,将编号1改为4,将编号3改为5,就是和图1一模一样的了原创 2022-11-11 01:25:53 · 1248 阅读 · 4 评论 -
c++入门必学算法 并查集
一、什么是并查集并查集其实就是实现一个类似朋友圈的功能,朋友的朋友是朋友,朋友的朋友的朋友也是朋友,即只要有关系一些人就合并成为一个朋友圈。并查集可以实现查询两个人是否是朋友,查询朋友圈的个数# 二、并查集的原理并查集原理和构图是类似的,但是构图每次查询的速度是 O(n) ,慢得离谱,此时查询复杂为 O(1) 的并查集算法就出现了我们定义一个数组 f[n] ,其下标表示点,他的值表示和其它点有关系,例如 f[1] = 4,即 1 号和 4 号是朋友,并查集优化、并查集原创 2022-10-31 12:11:30 · 2222 阅读 · 1 评论 -
c++入门必学算法 快速幂
一、什么是快速幂快速幂算法是用来快速计算指数表达式的值的,例如 210000000,普通的计算方法 2*2*2*2…乘10000000次,如果一个数字的计算都要计算那么多次的话,那么这个程序一定是失败的。学完快速幂之后就可以用几十次计算求出答案了二、快速幂思想及实现快速幂思想其实很简单,就是公式的转换1、当指数是偶数时,我们可以让指数除以2,底数乘以底数2、当指数是奇数时,我们可以将指数变为奇数例如 210指数是偶数,210 = 45指数是奇数,45 = 4 * 44指数是偶数,原创 2022-10-31 09:56:16 · 12441 阅读 · 10 评论 -
【关于无穷大0x3f3f3f的一些知识】
【关于无穷大0x3f3f3f的一些知识】0x3f3f3f3f的十进制是1061109567,也就是109级别的(和0x7fffffff一个数量级),而一般场合下的数据都是小于109的,所以它可以作为无穷大使用而不致出现数据大于无穷大的情形。另一方面,由于一般的数据都不会大于109,所以当我们把无穷大加上一个数据时,它并不会溢出(这就满足了“无穷大加一个有穷的数依然是无穷大”),事实上0x3f3f3f3f+0x3f3f3f3f=2122219134,这非常大但却没有超过32-bit int的表示范围,所以原创 2022-02-02 01:08:09 · 892 阅读 · 0 评论 -
c++ to_string()和stoi() 等 字符串/数字 转换函数
to_string()函数作用: 将基本类型的值转换为字符串基本类型包括int、long long、char等等使用的时候注意超限问题就好了,特殊地,char类型的转换是转换成它的ASCII值,而不是字符#include<iostream>using namespace std;int main(){ string s; int a=111111; long long b=222222; char c='a'; s=to_string(a); cout<<s&原创 2022-01-31 21:02:26 · 1563 阅读 · 0 评论 -
经典问题 小白鼠试毒药 这个算法你绝对不知道
问题有1000瓶液体,其中1瓶是毒药,其余的都是水,小白鼠喝了之后一个小时才会生效,问怎样用较少的时间和较少的小白鼠找出这瓶毒药呢?1000个小白鼠,1个小时?或者1只小白鼠,1000个小时?显然都不是有一个直观的办法,假如有9个小白鼠,我们把1000瓶药分为10份,每只小白鼠吃一份,这样一次过后就可以把范围缩小到100瓶药,继续实验但以上均不是最优的办法,其实只需要10只小白鼠,1个小时就可以了!下面看讲解:我们可以利用二进制很好地解决这个问题!首先我们给1000瓶药按999,998,997原创 2022-01-29 15:46:03 · 4898 阅读 · 2 评论 -
c++ 并查集
什么是并查集并查集是类似于集合的一种关系主要的基本用法有两个:1、判断两个点是否属于同一个集合2、查询现有的集合个数算法思路用故事讲算法:江湖里来了九位英雄人物:张无忌、小昭、光明左使杨逍、白眉鹰王殷天正、金毛狮王谢逊、青翼蝠王韦一笑、灭绝师太、周芷若、成昆。首先呢,给他们个取个代号0:张无忌1:小昭2:光明左使杨逍3:白眉鹰王殷天正4:金毛狮王谢逊5:青翼蝠王韦一笑6:灭绝师太7:周芷若8:成昆他们初来驾到,来到这里时都互不认识,他们一个人就代表一个势力int f[9原创 2022-01-25 15:12:37 · 1059 阅读 · 0 评论 -
水塘抽样法
什么是水塘抽样法在抽样的样本大小未知的情况下需要等概率选出一个数的时候推荐使用原理:遇到符合条件的数时选择的概率为1/n,n目前的元素个数,这样做每个数最终被选到的概率是相等的证明:客观来看遇到第1个数时,第一个数被选择的概率为1/1遇到第2个数时,第一个数被选择的概率为1/11/2=1/2,第二个数被选择的概率为1/2遇到第3个数时,第一个数被选择的概率为1/11/22/3=1/2,第二个数被选择的概率为1/22/3=1/3,第三个数被选择的概率为1/3推下去每个数被选择的概率都是一样的原创 2022-01-23 17:49:55 · 430 阅读 · 1 评论