哈希
litble
Away From OI已久,一天天变菜中,博客平时不咋看,也没能力答疑和改错了,因此不会互动见谅orz
展开
-
poj3131 立体八数码,双向广搜
神题。题目分析状态巨多无比。 咱们知道应对这种神级题目有两种办法:哈希和双向广搜。那么在这道题的情况下,都要用。 哈希当然是链式哈希了,一开始搞了半天每弄明白,后来参考了一位大大的代码,就两边的广搜写在同一个哈希表里,不过作不同的标记,这样可以让代码变短。 这位大大:http://blog.csdn.net/auto_ac/article/details/8790113 哈希就是用一个七进制原创 2017-05-09 13:00:50 · 854 阅读 · 0 评论 -
codevs3013单词背诵
来自我在另一个站点写的博客题目大意灵梦有n个单词想要背,但她想通过一篇文章中的一段来记住这些单词。文章由m个单词构成,她想在文章中找出连续的一段,其中包含最多的她想要背的单词(重复的只算一个)。并且在背诵的单词量尽量多的情况下,还要使选出的文章段落尽量短,这样她就可以用尽量短的时间学习尽可能多的单词了。输入格式第1行一个数n,接下来n行每行是一个长度不超过10的原创 2017-03-18 13:03:23 · 712 阅读 · 0 评论 -
codevs1247排排站
题目大意就是说,用一个二进制数描述一个奶牛,如果该位是1,表示奶牛有这个特征,如果为0,表示没有。所有奶牛站成一排,你要找出其中一串奶牛,对于每一个特征,这一串奶牛中拥有该特征的奶牛数相同,求这一串奶牛最长的长度。输入格式n表示奶牛数量(nk表示特征数量(n然后有n个数,用一个十进制的数描述这个奶牛的特征(你要转换为二进制数)输出格式答案,最长的那一串符号要求的奶牛的长原创 2017-03-18 13:58:30 · 975 阅读 · 1 评论 -
poj1971 哈希
题目大意给你一些点,求从其中取出4个点能组成平行四边形的点对数。题目分析一开始想的是枚举两个点,然后储存可以用来算斜率与长度的数值,如果一样就可以组成平行四边形…but…如果这4个点在同一条直线上呢啊喂?连样例都过不了的啊喂。 于是看了一下网上的题解,枚举两个点,算中点,因为对角线互相平分的四边形是平行四边形… 好吧…代码#include<algorithm>#include<iostream原创 2017-08-14 11:38:49 · 397 阅读 · 0 评论 -
ural1486 二分+二维哈希
题目大意给你一个矩阵,在里面找两个最大的相同的子正方形矩阵(可重叠,输出正方形边长和两个正方形的左上角坐标)题目分析首先二分正方形矩阵的边长,然后哈希每一个这样的正方形矩阵即可。 哈希的方法如下(x是矩阵中的元素) 然后容斥解决每一个子矩阵。(具体看代码,但是…看的时候请冷静点,因为很长) ⎡⎣⎢x1∗p2∗q3x5∗p∗q2x9∗q3x2∗p2∗q2x6∗p∗q2x10∗q2x3∗p2∗qx原创 2017-08-14 17:26:34 · 610 阅读 · 0 评论 -
loj2208/洛谷P3234 抄卡组 哈希
哈希 对于所有字符串都没有通配符的情况,显然把每个字符串哈希一下然后比较即可。对于所有字符串都有通配符的情况,我们可以将最前面一个通配符和最后面一个及其中间的部分缩成一个通配符,因为在纸上随便玩一下会发现总有办法匹配,然后我们对比一下前缀后缀是否能够匹配即可。对于有的有,有的没有的情况,也就是每一段两个通配符之间的部分都要在一个没有通配符的串中找到匹配,用一个指针依次往后面扫就可以,用h...原创 2018-03-21 22:12:08 · 478 阅读 · 0 评论