一些短小有趣的题

快回老家了,闲来无事遇到了一些有趣的小问题,作为活跃思维的小菜还是挺好的。 \pi^e 和 e^\pi 谁大? 这题是和同学讲批话时想到的。 主要体现了一个统一形式的想法,先说结论 e^\pi> \pi^e ,下面证明它。 即证:e^{\frac{1}{e}}>\pi^{\frac{1}{\pi}}

fogflea 发布于 2026-02-14

重链剖分

重链剖分剖分方式 重链剖分的剖分方式是:每次选择子树中最大的子树作为重儿子,其余的子树作为轻儿子。而重链是指一条从根节点到当前节点的路径上,出根节点外,链上其他节点都是重儿子的连边构成的链。如下图: 图中的红色边就是重链,而黑色边就是轻链。每个叶子节点也有一条以自己为起点,长度为 0 的重链。 从图

fogflea 发布于 2024-08-29

倍增法求LCA

朴素算法求LCA 首先将深度较大的节点沿着父亲向上跳转,与另一点深度相同后同时跳转,直至跳到同一父亲 int lca(int u, int v) { if (depth[u] < depth[v]) { swap(u, v); } while (depth[u

fogflea 发布于 2024-08-23

BSGS算法

离散对数问题 假设有一个同余方程a^x \equiv b \pmod m,其中a,b,m都是给定的整数,a与m互素。如何求解x的值? 第一个想法可能是暴力枚举,将x从0开始枚举到m-1,直到找到一个满足方程的x。时间复杂度是

fogflea 发布于 2024-08-23

扩展欧几里得算法

欧几里得算法是求解两个数的最大公约数的算法,而扩展欧几里得算法则是求解一元线性方程 ax+by=c 的整数解的算法,是欧几里得算法的升级版,也是提高的数论内容中的重要算法之一。 这个算法的原理是利用欧几里得算法求解最大公约数的过程中,不断地更新 x 和 y 的值,直到求解出整数解。具体的过程如下:

fogflea 发布于 2024-08-22