2026年6月29日

裴蜀定理和欧几里得

摘要: 裴蜀定理: 表述:ax + by = gcd(a, b) ,方程组一定有一组整数解 证明: 裴蜀定理 表述:\(ax+by=\gcd(a,b)\) 必有整数解 证明 \[\begin{cases} ax+by=\gcd(a,b)=d \quad (1)\\ ax_0+by_0=s \quad (s为 阅读全文

posted @ 2026-06-29 09:57 我不爱吃汉堡 阅读(16) 评论(0) 推荐(0)

换根dp

摘要: 换根dp是树形dp的一种变形,通常用于解决一下两种问题 题目中有明显的换根操作 子节点的信息更新需要父节点的信息,要二次扫描 换根dp的思考方式也很固定,一般从二次扫描需要的信息出发,然后通过第一次dfs维护出相应的信息,后续二次dfs更新答案。需要注意的是,虽然涉及到换根操作,但是都是从以1为根节 阅读全文

posted @ 2026-06-29 09:51 我不爱吃汉堡 阅读(23) 评论(0) 推荐(0)

单调队列优化dp

摘要: 单调队列优化线性dp 对于单调队列,它可以维护一个窗口内的最大最小值,所以单调队可以优化的dp的类型一般是从某个定长窗口转移而来的dp问题。 由于用deque维护的单调队列的常数较大,所以下面来用数组模拟一下单调队列 稍微一想,对于单调队列维护窗口的操作,我们仅仅用到了deque的头删、尾删、尾插, 阅读全文

posted @ 2026-06-29 09:49 我不爱吃汉堡 阅读(29) 评论(0) 推荐(0)

矩阵快速幂优化dp

摘要: 首先回顾一下矩阵快速幂:求一个\(n\)阶方阵\(A\)的\(k\)次方 P3390 【模板】矩阵快速幂 code: #include <iostream> #include <cstring> using namespace std; typedef long long LL; const int 阅读全文

posted @ 2026-06-29 09:47 我不爱吃汉堡 阅读(22) 评论(0) 推荐(0)

树状数组优化dp

摘要: 原理及模板 树状数组通常用于解决区间修改和区间查询等问题,可以看做线段树的简化版,它所维护的区间信息需要满足可差分性。 对于区间的修改操作,树状数组的维护很麻烦,一般用线段树来解决;对于区间最大值一类的问题,树状数组没法维护这类信息的原因是在需要区间的差操作,但是当我们所需要的最大值信息仅涉及到一个 阅读全文

posted @ 2026-06-29 09:43 我不爱吃汉堡 阅读(31) 评论(0) 推荐(0)

AVL平衡树

摘要: 前言:set 和 map 底层是基于红黑树这颗平衡树来实现的,但由于封装的特性,这颗平衡树的结构对外就是一个黑盒,在算竟中我们往往需要自己维护平衡树结构把树高控制在\(logn\)(可能并不严格),因此需要掌握平衡树的各种操作。 在学习AVL树之前需要对二叉搜索树和平衡搜索树的结构较为熟悉。 AVL 阅读全文

posted @ 2026-06-29 09:22 我不爱吃汉堡 阅读(8) 评论(0) 推荐(0)

2026年1月18日

2025年 蓝桥杯省赛C++A组题解

摘要: 2025年 蓝桥杯省赛C++A组题解 一、寻找质数 题目大意:找出第 2025 个质数。 【题解】:\(\pi(x)\)~\(\frac{x}{lnx}\),当 x 取到 30000 时,\(\frac{x}{lnx} \ge 2025\),用 欧拉筛 或者 埃氏筛\(O(n)\)算一下即可。 code: #include <iostr 阅读全文

posted @ 2026-01-18 22:42 我不爱吃汉堡 阅读(170) 评论(0) 推荐(0)

2026年1月16日

2025年 蓝桥杯省赛C++B组题解

摘要: 2025年 蓝桥杯省赛C++B组题解 一、移动距离 题目大意:小明初始在二维平面的原点 (0,0),他想前往坐标 (233,666)。 现在他有两种移动策略: 水平向右移动,即沿着 x 轴正方向移动一定的距离。 沿着一个圆心在原点 (0,0)、以他当前位置到原点的距离为半径的圆的圆周移动,移动方向不限(即顺时针或逆时针移动不限)。 【题 阅读全文

posted @ 2026-01-16 19:38 我不爱吃汉堡 阅读(132) 评论(0) 推荐(0)

导航