哈希
_Shmily
这个作者很懒,什么都没留下…
展开
-
石油大--Contest2022 - 2020年秋季组队训练赛第二场--17102 Problem F、Regular Forestation (树同构、剪枝)
题面:题意:给定一棵无根树,如果去掉点 xxx 且去掉与点 xxx 相连的边,剩下的部分是由 kkk 棵树组成的森林,且这 kkk 棵树同构,且k>1k>1k>1 。那么称 xxx 是一个好的切分点。输出去掉某一个好的切分点后最大的 kkk。题解:数据量只有 400040004000,很容易想到解决方案可能是 O(n2)O(n^2)O(n2) 复杂度的算法。我们枚举每个点 xxx,判定这个点是否是好的切分点,同时用 kkk 更新答案。在判断两棵树是否同构的时候,我们需要求出原创 2020-08-31 08:33:29 · 244 阅读 · 0 评论 -
2020 Multi-University Training Contest 8---- HDU--6863、Isomorphic Strings(哈希)
题目链接题面:题意:给定一个长度为 nnn 的串 SSS,问 SSS 能不能划分为 kkk 个等长的串,使得这 kkk 个串循环同构。其中 k>1k>1k>1。题解:考虑枚举 kkk,将串 SSS 第一个长度为 nk\frac{n}{k}kn 子串的所有循环同构的哈希值保存下来,然后把 SSS 分为 kkk 个长度为 nk\frac{n}{k}kn 的串,查询这些哈希值是否存在于 第一个长度为 nk\frac{n}{k}kn 循环同构的哈希值里面。时间复杂度 O(∑原创 2020-08-28 10:23:12 · 120 阅读 · 0 评论 -
2020 Multi-University Training Contest 2---- HDU--6768、The Oculus(哈希)
题目链接题面:题意:有结论:任何正整数可以表示为若干个不连续的斐波那契数之和。定义一个正整数的斐波那契表示为∑i=1ns[i]∗f[i]\sum_{i=1}^ns[i]*f[i]∑i=1ns[i]∗f[i],其中s[i]s[i]s[i]不会连续两位为1。现在给定A的斐波那契表示,B的斐波那契表示,C的斐波那契表示。其中A∗B=CA*B=CA∗B=C,但是C的斐波那契表示中有一位 1 被变成0了,找到这一位。题解:代码:#include<iostream>#include原创 2020-08-25 09:00:33 · 71 阅读 · 0 评论 -
EOJ Monthly 2020.7 Sponsored by TuSimple D. 前缀排序(贪心+sort)
题目链接题面:题解:具体见代码注释。需要注意的是,sort 的 cmp 就算是参数是引用类型,在cmp 中交换两个数也会出问题。cmp中二分找第一不相同的字母的位置。#include<iostream>#include<cstdio>#include<cstdlib>#include<algorithm>#include<cstring>#include<cmath>#include<string>原创 2020-08-25 08:50:03 · 220 阅读 · 0 评论 -
2020牛客暑期多校训练营(第二场) A、All with Pairs (hash、后缀自动机)
题目链接题面:官方题解:①、hash#include<iostream>#include<cstdio>#include<cstdlib>#include<algorithm>#include<cstring>#include<cmath>#include<string>#include<queue>#include<bitset>#include<map>原创 2020-08-25 08:21:41 · 135 阅读 · 0 评论 -
Codeforces Round #291 (Div. 2) C. Watto and Mechanism(哈希)
题目链接题意:给定n个串,然后给出m个询问。对于每个询问,判断 能否 更改一个字符使得其变为n个串中的一个。串只有 a b c 三种字符。hash乱搞+枚举。题解:好像没写过hash的博客,就拿这个来写一下。⑧过单hash被卡掉了,双hash乱搞一下就好啦。为了不显得那么乱,把两个hash分开了。#include<iostream>#include<cstdio>#include<cstdlib>#include<algorithm>原创 2020-08-24 22:03:34 · 122 阅读 · 0 评论