摘要:
题目链接: "戳我" emmmmmmmmmm异或一个数两次等于没有操作对吧。。。所以我们按照前缀的异或和,建一个01trie。。。。。然后之后。。。。。直接在树上贪心地找能和它每一位不一样的数。。。。然后。。。。就没有了吧qwqwq 代码如下: cpp include include include 阅读全文
摘要:
题目链接: "戳我" 线段树中差分和前缀和的应用 其实对于加上等差数列的操作我们可以分成这样三步—— 然后查询的时候1到当前位置的和就是这个数的值啦! 代码如下: PS:(蒟蒻的一点小想法) 这道题让我们求的是单点查询。。。如果是 区间查询 呢? 这样我们就别用前缀和来表示这个数了,但是因为等差数列 阅读全文
摘要:
题目链接: "戳我" 最小圆覆盖。 1、枚举第一个点,考虑当前圆是否包含了这个点,如果没有,则把圆变成以这个点为圆心,半径为0的圆。 2、枚举第二个点,考虑圆是否包含了这个点,如果没有,则把圆变成以这两个点的中点为圆心,半径为两点距离一半的圆。 3、枚举第三个点,节点是否在圆内,如果不在,直接把圆变 阅读全文
摘要:
题目链接: "戳我" 一个最小圆覆盖的模板题吧。。。 最小圆覆盖怎么做?? 就是枚举三个点,第一个点做圆心,第二、三个点和第一个点联合起来确定一个圆。 看起来是$O(n^3)$的是不是?但是其实均摊时间复杂度是$O(n)$的。具体为什么我也不会证,但是我们可以知道,如果枚举后面的点已经在前面确定好的 阅读全文
摘要:
题目链接: "戳我" 找规律。 不过为了方便,每次我们计算入口和某一个出口之间需要花费的体力值的时候,不妨把x较小的假设成塔顶,这样的话另一个就不需要分类讨论了。 详细请看代码 cpp include include include include include define MAXN 10000 阅读全文
摘要:
题目链接 "戳我" 能看懂的题目翻译:给你N,让你求$N=\phi N$多少次N=1. 根据唯一分解定理,以及题目中对$\phi$的计算提示,我们知道,每一次计算,可以使得其中至多一个2变成1,不断地重复这个操作,这个数就会越来越小,直到达到1. 所以我们求出来一个数中有多少个2作为因子即可。 nl 阅读全文