摘要: 前置知识 以下结论是显然的: (1)若$\theta$可乘,则 \(\theta(1)=1\) \(\theta(n)=\theta\left(p 1^{\alpha 1}\right) \theta\left(p 2^{\alpha 2}\right) \ldots \theta\left(p k 阅读全文
posted @ 2020-08-13 09:58 UCPRER 阅读(148) 评论(0) 推荐(0) 编辑
摘要: 我们有时需要判断一些树是否同构。这时,选择恰当的Hash方式来将树映射成一个便于储存的Hash值(一般是 32 位或 64 位整数)是一个优秀的方案。 树Hash定义在有根树上。判断无根树同构的时候,可以比较重心为根的Hash值(一个树最多有两个根)或者比较每个点为根的Hash值(后者有O(n)的求 阅读全文
posted @ 2020-08-12 15:30 UCPRER 阅读(250) 评论(0) 推荐(0) 编辑
摘要: 原理 请思考以下问题: 任意给定正整数n,请问在小于等于n的正整数之中,有多少个与n构成互质关系?(比如,在1到8之中,有多少个数与8构成互质关系?) 计算这个值的方法就叫做欧拉函数,以φ(n)表示。在1到8之中,与8形成互质关系的是1、3、5、7,所以 φ(n) = 4。 φ(n) 的计算方法并不 阅读全文
posted @ 2020-08-10 10:26 UCPRER 阅读(413) 评论(0) 推荐(0) 编辑
摘要: POJ1279 半平面交模板 题意 以顺时针或逆时针顺序给定一个多边形,求该多边形核的面积 解法 半平面交要求边要按逆时针顺序,首先利用叉积判断给定点顺序为逆时针还是顺时针,然后按逆时针方向建边,最后跑半平面交算法,得到多边形的核。对核中相邻边求交点,利用叉积计算面积。 代码: #include < 阅读全文
posted @ 2020-08-05 10:31 UCPRER 阅读(156) 评论(0) 推荐(0) 编辑
摘要: 解法: 如上图,可以发现长度为7,最小数为1的序列对答案的贡献是有规律的,这种规律可以由5个区间加表示。 因为是区间加,可以采用差分数组来实现,但是有多个区间加,如果每次枚举的长度和最小数都要O(n)时间来维护,那么结果必然是TLE。因为这几个区间是有规律的,即左端点每次+2,右端点每次+1,可以考 阅读全文
posted @ 2020-08-04 10:54 UCPRER 阅读(341) 评论(0) 推荐(0) 编辑
摘要: 题意: 多组输入,给定a,b两个数组,长度分别为n,m。每个元素有两个值:wi,vi,要求从两个数组中分别选出一个子数组,使得两个子数组的wi和相同,并使总的vi之和最大。 数据范围:n,m<=1e3,wi<=1e3,vi<=1e9,\(\sum(n+m)<=1e4\) 解法: 很容易想到分别对两个 阅读全文
posted @ 2020-07-31 16:23 UCPRER 阅读(488) 评论(0) 推荐(1) 编辑
摘要: 题意: 多组输入。给定一棵树,每条边有两个可能的取值a和b,整棵树有k条边的值来自a,其余边的值来自b,问树的直径最小值为多少? 取值范围:k<=min(20,n-1),n<=20000,\(\sum n<=200000\) 解法: 和直径有关,一般要用到树上dp 发现直接求解直径的最小值难以实现, 阅读全文
posted @ 2020-07-29 13:52 UCPRER 阅读(143) 评论(0) 推荐(0) 编辑
摘要: 原理 //一般gcd ll gcd(ll a,ll b){ return b==0?a:gcd(b,a%b); } 当递归得到b=0时,得到gcd(a,b)=a,因此方程变为ax+0y=a,此时x=1,y=0是方程的一组特解 模板 void exgcd(ll a,ll b,ll &x,ll &y){ 阅读全文
posted @ 2020-07-23 10:40 UCPRER 阅读(176) 评论(0) 推荐(0) 编辑
摘要: 题意 Fibonacci定义如下: 输入三个数n,c,k,计算如下表达式的值: 并将结果对1e9+9取模 思路: Fibonacci的通项公式如下: \(F_i=\frac{1}{\sqrt{5}}*[(\frac{1+\sqrt{5}}{2})^i-(\frac{1-\sqrt{5}}{2})^i 阅读全文
posted @ 2020-07-22 16:45 UCPRER 阅读(242) 评论(0) 推荐(0) 编辑
摘要: 学习: https://kewth.blog.luogu.org/solution-p5491 定义 对于p,n,若存在x,满足$x^2 \equiv n \pmod\(,则称n为模p意义下的二次剩余,即n在模p意义下能开方,计算二次剩余就是计算x,x在模p意义下和\)\sqrt$等价 下文仅对p为 阅读全文
posted @ 2020-07-22 14:15 UCPRER 阅读(279) 评论(0) 推荐(0) 编辑