哈希表
WerKeyTom_FTD
我是一只来自中山纪念中学高三的oier,请多多指教
展开
-
矩形
题目大意给定一个由数字(0-9)构成的字符串s。我们可以由此定义出size(s) * size(s) 大 小的矩阵b,其中b[i][j] = s[i] * s[j];请问在这个矩阵b中,有多少子矩形满足其中的b[i][j]的和为另一个给定的数字a。水题预处理前缀和,然后变成了某因数个数个数统计问题,太水了我讲的不详细也没事。#include<cstdio>#include<algorithm>原创 2016-03-09 19:24:10 · 495 阅读 · 0 评论 -
排序列表
题目大意有若干个区间,C(m)表示所有包含m这个点的区间编号排序后的序列。 求本质不同的非空字典序第k小的序列。做法先离散化,因为本质不同不会超过2n个序列。 接下来顺序扫,并维护每个位置的hash值。 遇到之前出现过的hash值就叉掉。 然后接下来枚举按字典序枚举,每次看看往字典序末尾加入i会有多少种可能。 对于k,如果它不在答案序列中,不能选择它区间所包含的m。 对于k,如果它在答案原创 2017-07-11 14:23:06 · 435 阅读 · 0 评论 -
字符串匹配
题目描述对于一个字符集大小为C的字符串P,我们可以将任意两种字符在P中的位置进行互换,例如P=abcba,我们交换a,b就变为bacab,交换a,d就变为dbcbd,交换可以进行任意次。若交换后P变为了字符串Q,则我们称Q与P是匹配的。 现在给定两个字符集大小为C的字符串S,T,请你求出S中有多少个连续子串与T是匹配的。水题一个字符串可以这样表示,一个位置首次出现某个字符标为0,否则标为与最近一个原创 2017-05-04 15:47:10 · 768 阅读 · 0 评论 -
[bzoj4828][HNOI2017]大佬
题目描述人们总是难免会碰到大佬。他们趾高气昂地谈论凡人不能理解的算法和数据结构,走到任何一个地方,大佬的气场就能让周围的人吓得瑟瑟发抖,不敢言语。你作为一个OIER,面对这样的事情非常不开心,于是发表了对大佬不敬的言论。大佬便对你开始了报复,你也不示弱,扬言要打倒大佬。 现在给你讲解一下什么是大佬,大佬除了是神犇以外,还有着强大的自信心,自信程度可以被量化为一个正整数C(1<=C<=10^8),想原创 2017-04-19 22:30:16 · 1461 阅读 · 0 评论 -
无限棋盘
题目描述无聊的小A在一个无限大的棋盘上玩游戏,这个棋盘由一个M*N的模板不停重复生成。例如,当模板为: honi hsin 时,我们会生成如下棋盘: …honihonihonihoni… …hsinhsinhsinhsin… …honihonihonihoni… …hsinhsinhsinhsin… 其中,该棋盘在任意一个方向都可以无限延伸。 现在小A在棋盘上随机挑选一个位置,又随原创 2017-04-06 09:46:33 · 711 阅读 · 0 评论 -
[bzoj3283]运算器
题目大意数论题三合一。 第一问求yz%py^z\% p 第二问求yx%p=zy^x\%p=z的最小非负整数x 第三问求Cyz%pC_z^y\%p第一问谁都会做第二问大步小步法。 假设解决这样一个问题 ax≡b(modp)a^x\equiv b(\mod p) 首先考虑a与p互质的情况。那么显然是有循环节的。只需要考虑p以内。 设x=Ap√−BA\sqrt p-B aAp√−B≡b(m原创 2017-04-08 11:57:49 · 625 阅读 · 0 评论 -
[bzoj4755][JSOI2016]扭动的回文串
题目大意给定两个长度为n的字符串A和B。 扭动的回文串定义为a[i..j]与b[j..k]相接成的字符串为回文串或者a、b的一个回文子串。随便搞搞对a、b分别做一次manacher。 然后我们只需要考虑相接的扭动回文串。 枚举a中一个回文中心,即最后扭动回文串的回文中心,有一个结论最优一定是延伸到最长(即延伸到[l,r]使得[l,r]是最长以当前回文中心为回文中心的回文串)。 接着只需要看a原创 2016-05-23 21:26:45 · 2010 阅读 · 0 评论 -
Divisors
题目大意给定m个整数a1~m,m+1个询问第i个询问求[1,n]有多少个数是恰好是a中i-1个数的约数。暴力一个数的约束是根号个,因此暴力枚举约束,哈希表统计#include<cstdio>#include<algorithm>#include<cmath>#include<map>#define fo(i,a,b) for(i=a;i<=b;i++)using namespace std原创 2016-11-05 16:03:41 · 369 阅读 · 0 评论 -
[bzoj4928][SDOI省队集训2017]dierti
题目描述对于一棵有根树,定义一个点u 的k− 子树为u 的子树中距离u 不超过k 的部分。注意,假如u 的子树中不存在距离u 为k 的点,则u 的k−子树是不存在的。 定义两棵子树是相同的,当且仅当不考虑点的标号时,他们的形态是相同的(儿子的顺序也需要考虑)。给定一棵n 个点,点的标号在[1,n],以1 为根的有根树。问最大的k,使得存在两个点u ̸= v,满足u 的k− 子树与v 的k− 子树相原创 2017-05-31 20:34:01 · 904 阅读 · 0 评论