备战蓝桥杯
文章平均质量分 58
dy小坚果
这个作者很懒,什么都没留下…
展开
-
算法常用模板
一、数论1.试除法判定质数#include<iostream>using namespace std;int ff(int x){ if(x < 2) return 0; for(int i = 2; i <= x / i; i++){ if(x % i == 0) return 0; } return 1;}int main(){ int t; cin>>t; int x;原创 2024-04-12 21:36:51 · 661 阅读 · 0 评论 -
并查集加训
分别求 -1 和 1 的朋友有多少个(包括他们自己),然后取最小的,就是对数。可以选择多个集合的云,所以要用 01 背包。原创 2024-04-11 21:39:52 · 522 阅读 · 0 评论 -
蓝桥杯加训
思路:人和牛都记录三个数据,当前坐标和走的方向,如果人和牛的坐标和方向走重复了,那就说明一直在绕圈圈,无解。原创 2024-04-09 19:47:22 · 1965 阅读 · 0 评论 -
基础贪心问题
2.排队接水3.线段覆盖按区间右端点升序排序,如果能接上就接4.合并果子用小根堆维护最小值,每次取出两个最小值5.小A的糖果如果两个相邻的多了,那就先减去第二个,因为第二个还关联第三个6.删数问题删掉下坡数7.陶陶摘苹果(升级版)按花费力气升序排序,先摘花费力气小的8.铺设道路大的带着小的填,如果后面一个大于前一个高度,那就多填这个差值,最后加上第一个需要填的高度9.混合牛奶按照价格升序排序,先买便宜的10.纪念品分组让大的和小的组合11.跳跳!高低高低原创 2024-04-08 16:12:30 · 569 阅读 · 0 评论 -
二分查找和二分答案
二分可以使用的时间,边界一定要取到 [0, 1e10]无解的时候,可以取到左边界 l。二分最短跳远距离的最大长度。原创 2024-04-07 08:45:59 · 333 阅读 · 0 评论 -
蓝桥杯练习题——搜索
注意数组空间要开大点,防止对角线数组存不下。原创 2024-03-29 15:25:34 · 367 阅读 · 0 评论 -
蓝桥杯练习题——博弈论
1.必胜态后继至少存在一个必败态2.必败态后继均为必胜态。原创 2024-03-25 17:55:28 · 1370 阅读 · 0 评论 -
动态规划——线性dp
【代码】动态规划——线性dp。原创 2024-03-25 03:52:14 · 499 阅读 · 0 评论 -
矩阵快速幂
【代码】矩阵快速幂。原创 2024-03-24 00:20:45 · 266 阅读 · 0 评论 -
蓝桥杯练习题——日期问题
分别计算从第一年到两个日期过了多少天,然后相减。原创 2024-03-19 17:05:05 · 440 阅读 · 0 评论 -
蓝桥杯练习题——贡献法(隔板法)
孤独的区间一定有一头孤独的牛,考虑每头牛对区间的贡献是多少。原创 2024-03-18 23:00:54 · 385 阅读 · 0 评论 -
树状数组(1)
单点修改,区间查询。原创 2024-03-15 21:48:11 · 535 阅读 · 0 评论 -
蓝桥杯练习题——多路并归
不会反复横跳,按顺序合并,每次取出最大值只需要考虑合并几个鱼塘,合并后剩余时间是多少,然后在这个超级鱼塘每次取最大值。原创 2024-03-14 14:55:33 · 677 阅读 · 0 评论 -
C++读取文件数据
【代码】C++读取文件数据。原创 2024-03-12 10:02:26 · 907 阅读 · 0 评论 -
蓝桥杯2023真题(4)
路线:2 -> 6 -> 5 -> 11.一个点都不去去掉的花费记作sum2.去掉第一个点,sum - cost[2 -> 6]3.去掉第二个点,sum - cost[2 -> 6] - cost[6 -> 5] + cost[2 -> 5]dfs 中的参数不是一下就想到的,而是在写的过程中,你发现需要某个信息,而这个信息没有被提前记录,所以可以把这个信息当作参数记录下来正解就是优化 cost 的求法。原创 2024-03-11 20:46:24 · 580 阅读 · 0 评论 -
蓝桥杯练习题——树状数组和线段树
时间复杂度:O(logn),查询和修改都是解决问题:单点修改、区间查询,也可以区间修改,单点查询原理:数组下标必须从 1 开始,如果下标二进制最右边有 k 个 0,那就是第 k 层,lowbit(x) = 2 ^ k,每个 c[x] 存储的是 [x - lowbit(x), x] 区间的和。原创 2024-03-10 15:51:13 · 883 阅读 · 0 评论 -
蓝桥杯练习题——归并排序
1.求最小值的时候,可以直接按升序排序,这样得到的值就是最小值2.求最小交换次数的时候,不能直接排序,因为只能交换相邻的数,只需要知道他们的相对大小,所以可以先用离散化,把火柴高度映射成 1 到 n,然后用一个中间数组 c,让 b 数组按照 a 数组的顺序归并排序,交换相邻两个元素,最多只会使得逆序对数量减一。原创 2024-03-08 22:59:43 · 598 阅读 · 0 评论 -
背包九讲——菜鸟九题
默认 f 数组初始化为 0,所以 f[i] 不一定是装满 i 容量的最大价值,如果想让 f[i] 表示装满 i 容量的最大价值,可以初始化 f 数组为负无穷,f[0] = 0下面的题目都在 acwing 题库前面。原创 2024-03-07 16:45:34 · 776 阅读 · 0 评论 -
蓝桥杯练习题——双指针
1.从大到小排序,把数组分成三段,[1, j] (j, j2] (j2, n],j 以 i 为界限,j2 以 i - 1 为界限2.第一部分引用数已经够了,第三部分引用数差太多,判断第一部分 + min(L, 第二部分)是否有 i 篇int。原创 2024-03-06 00:51:30 · 654 阅读 · 0 评论 -
蓝桥杯练习题——dp
尽可能分成两堆重量相同,使得相撞后重量最小1.f[j]: 容量为 j 的背包,最大价值3.全部 = 04.倒序遍历public:i < n;i < n;i++){j--){原创 2024-03-05 00:08:02 · 6777 阅读 · 2 评论 -
蓝桥杯练习题——差分
1.区间同时加减 1,可以转换成一个差分数组两个端点的操作2.用 p 减去 t 数组,得到要消除的数组 a,对 a 求差分数组3.差分数组一正一负为一个操作,因为是把这个原数组区间加上了 1,单独的正负为一个操作4.总共需要的操作就是差分数组里 max(正数和, 负数和)原创 2024-03-04 11:12:11 · 663 阅读 · 0 评论 -
蓝桥杯练习题——前缀和
1.求最坏情况下,画的墙总和是多少2.画的墙在中间连续一段,画了的墙长度是 n / 2 向上取整3.取最大的 n / 2 向上取整区间和。原创 2024-03-04 02:38:25 · 763 阅读 · 0 评论 -
蓝桥杯练习题——二分
1.随着订单的增加,每天可用的教室越来越少,二分查找最后一个教室没有出现负数的订单编号2.每个订单的操作是 [s, t] 全部减去 d。原创 2024-03-03 14:15:27 · 631 阅读 · 0 评论 -
蓝桥杯2023年真题(3)
【代码】蓝桥杯2023年真题(3)原创 2024-02-14 00:59:06 · 365 阅读 · 0 评论 -
蓝桥杯2023真题(2)
【代码】蓝桥杯2023真题(2)原创 2024-02-12 23:13:23 · 334 阅读 · 0 评论 -
蓝桥杯2023年真题(1)
格式:⾃然数,值位数,值。原创 2024-02-11 22:02:14 · 1403 阅读 · 0 评论 -
蓝桥杯基础算法(二分,c++)
【代码】蓝桥杯基础算法(二分,c++)原创 2024-01-28 23:55:21 · 171 阅读 · 0 评论 -
蓝桥杯基础算法(位运算,c++)
按位异或(^):不同为 1,相同为 0,x ^ y = z 得 z ^ y = x,x ^ 0 = x。对二进制数的位进行操作,整数是通过补码表示,正数的原码 = 补码,int类型是32位二进制数。判断有多少位二进制数是1时,要用unsigned int防止1到符号位。按位与(&):只有 1 & 1 = 1,其他都是0。按位或(|):只有 0 & 0 = 0,其他都是1。按位取反(~):0 变 1,1 变 0。按位左移(<<):移动后低位补0。按位右移(>>):移动后高位补0。原创 2024-01-28 23:09:04 · 301 阅读 · 0 评论 -
蓝桥杯常用stl(c++)
时间复杂度:O(logn)底层:红黑树存储一组键值对,每个键都是唯一的,根据键自动进行排序,可以通过键快速查找对应的值insert:插入元素,O(logn)erase:删除元素,O(logn)find:查找元素,O(logn)count:统计元素个数,判断key是否存在,O(logn)size:返回元素个数,O(1)begin:返回指向容器起始位置的迭代器,O(1)end:返回指向容器末尾位置的迭代器,O(1)clear:清空容器,O(1)原创 2024-01-28 22:06:43 · 1007 阅读 · 0 评论 -
蓝桥杯常用库函数(c++)
时间复杂度:O(n)头文件:algorithmmin_element(st, ed):返回地址[st, ed)中最小的那个值的地址(迭代器)max_element(st, ed):返回地址[st, ed)中最大的那个值的地址(迭代器)原创 2024-01-27 21:56:46 · 754 阅读 · 0 评论