摘要: ######有关我没开ull见祖宗半个多小时最后还是lnr告诉我这一件事 原题链接 思路: 我们发现:同或这一操作其实就是异或后按位取反。 而一个数按k位取反可以使其异或上2^k - 1 因此,由异或的交换律,我们可以先将这n个数异或起来,最后有若干项是取反的,但我们发现,取反两次则相当于不变,因此 阅读全文
posted @ 2021-09-11 20:30 Leins 阅读(42) 评论(0) 推荐(0) 编辑
摘要: 原题链接 树上两点之间的路径是唯一的,我们发现,当有人脱离了两者之间的路径时,他所走的步数不会被对方所干预(双方已经毫无关系了),故可以对抗搜索,当有一方离开两点路径之时,直接统计答案。 详情见代码: /* 牛客多校8-J 对抗搜索,剪枝,rmq表预处理。 思路: dfs1预处理出s到t 的唯一路径 阅读全文
posted @ 2021-08-10 17:40 Leins 阅读(87) 评论(0) 推荐(0) 编辑
摘要: #先记录H题,其他待填坑 本质该题等价于给出n个不同的数,O(nlogn)地求出两两之差(取绝对值)。 则可以用fft卷积。 我们记第一个多项式为 \(a_0\) + $a_1$$x$ + $a_2$$x2$ + ... + $a_n$$xn$ #####其中,如果i在原序列出现过,则$a_i$ = 阅读全文
posted @ 2021-07-18 21:39 Leins 阅读(10) 评论(0) 推荐(0) 编辑
摘要: 找了一道通过人数最少的题来切了 原题链接 思路: 预处理出所有2的次幂的答案 显然有如下递推式: void init() { sz[0] = 1; for (int i = 1; i <= 32; i++) { sz[i] = 2 * sz[i - 1] + 1; } } ####其实sz[i]的本 阅读全文
posted @ 2021-07-15 20:33 Leins 阅读(16) 评论(0) 推荐(0) 编辑
摘要: 原题链接 思路: 显然如果有连续偶数个“1”,那么这些“1”可以拆成若干组“11”自由移动。 因此有了思考方向,用捆绑法,以2个“1”一组。 那么,如果有连续奇数个“1”该怎么办? 经过操作观察,我们发现,多出来的“1”我们其实不需要理它,去掉一个“1”将剩下的偶数个“1”按上述分组,将这些组和0排 阅读全文
posted @ 2021-07-12 20:38 Leins 阅读(25) 评论(0) 推荐(0) 编辑
摘要: #GDCPC广东省赛F-Fake Math Problem题解 原题链接 ##前言: ###赛场上一开始没发现naughty的998241383不是质数,一直想着逆元推式子,后来发现不是质数后就不太有思路了,比赛结束发现朋友们是用线段树做的,今天复盘想出了较为“数学”的解法(好像也是官方题解) 思路 阅读全文
posted @ 2021-07-11 19:48 Leins 阅读(40) 评论(0) 推荐(0) 编辑
摘要: 原题链接 思路: 我们来看一下第i个数字 & 第i + 1 个数字 = 第i个数字有什么可探究的性质。 显然:第i个数字数字第bit位上是1,说明i + 1往后的所有数第bit位上也是1, 而第bit位为1代表着2的某个次幂。 更一般的,原题等价于将m拆分成若干个2的次幂的和,其中同种类的2次幂的个 阅读全文
posted @ 2021-07-10 21:59 Leins 阅读(67) 评论(0) 推荐(0) 编辑
摘要: #牛客练习赛86A-C题解 题目链接 ##A 奇偶交替判断即可 ##B N ⇐ 100 先看k = 1的情况 显然123,112233,111222333...这样扩充,有10个, 因此,我们对序列{123,134,145,156,178,189,235,246,257,268,279...}依次扩 阅读全文
posted @ 2021-07-10 11:22 Leins 阅读(67) 评论(0) 推荐(1) 编辑
摘要: #本蒟蒻屑的第一篇题解博客Qwq ##原题链接 ##题目翻译:给定一个由1-9组成的长度范围为(3e5)的字符串,并给出q(q ⇐ 3e5)次询问,每次给出个长度k, 求出该字符串中长度至少为k的子串的最长长度。 ###省赛的C题,比赛时读题发现应该是一个后缀自动机但由于本屑非oier,对于xx自动 阅读全文
posted @ 2021-07-08 23:36 Leins 阅读(137) 评论(0) 推荐(0) 编辑