![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Hash
_Ark
这个作者很懒,什么都没留下…
展开
-
[Sdoi2013] [bzoj 3198] spring (hash+容斥原理)
题目描述给出nnn个666维坐标,求有多少对点对满足恰好mmm个位置相等1<=n<=1051<=n<=10^51<=n<=1050<=k<=60<=k<=60<=k<=6原创 2018-11-29 22:52:24 · 193 阅读 · 0 评论 -
unordered_map初用
unordered_map,顾名思义,就是无序map,使用时可以当做STL的Hash表使用,时间复杂度可做到O(1)查询在C++11前,使用unordered_map要像这样写:#include <tr1/unordered_map> //在unordered_map之前加上tr1库名using namespace std::tr1; //加上命名空间C++11:#incl...原创 2018-12-07 23:11:02 · 625 阅读 · 0 评论 -
BZOJ 4278: [ONTAK2015]Tasowanie (后缀数组 / 二分+hash)
直接归并,然后如果哪边的后缀字典序比较小就去哪边,然后就可以后缀数组 博客传送门…但是本蒟蒻不会后缀数组于是就hash后二分找相同的最长区间,然后比较后一个谁更小…时间复杂度O(nlogn)O(nlogn)O(nlogn).注意先在最后加一个极大值.因为如果一个序列A到末尾刚好与序列B的一段相等,那么一定是取B更优,因为B后面可能有更小的.hack数据4 2 2 2 13 2 2 ...原创 2019-03-29 22:16:47 · 182 阅读 · 0 评论 -
BZOJ 2119: 股市的预测 (Hash / 后缀数组 + st表)
转博客大法好自己画一画看一看,就会体会到这个设置关键点的强大之处了.CODE(sa)O(nlogn)→1436msO(nlogn)\to 1436msO(nlogn)→1436ms#include <bits/stdc++.h>using namespace std;typedef long long LL;template<class T>inline vo...原创 2019-03-31 22:38:33 · 195 阅读 · 0 评论 -
BZOJ 1692: [Usaco2007 Dec]队列变换 (后缀数组/二分+Hash)
跟BZOJ 4278: [ONTAK2015]Tasowanie一模一样SA的做法就是把原串倒过来接在原串后面,O(nlogn)O(nlogn)O(nlogn)做后缀数组,就能O(1)O(1)O(1)够比较每个前缀和后缀谁的字典序小了.Hash二分也可以.CODE(SA)O(nlogn)O(nlogn)O(nlogn)#include<bits/stdc++.h>using...原创 2019-04-01 19:03:13 · 153 阅读 · 0 评论 -
BZOJ 2946 [Poi2000]公共串 (二分+Hash/二分+后缀数组/后缀自动机)
求多串的最长公共字串.法1: 二分长度+hash 传送门法2: 二分+后缀数组 传送门法3: 后缀自动机拿第一个串建自动机,然后用其他串在上面匹配.每次求出SAM上每个节点的最长匹配长度后,再在全局取最小值(因为是所有串的公共串)就行了.CODE#include<bits/stdc++.h>using namespace std;char cb[1<<15]...原创 2019-04-01 20:28:20 · 222 阅读 · 0 评论