Processing math: 0%

随笔分类 -  hash

摘要:大体思路是先求出来f[i]代表有至少i个位置相同的点对数。 然后就已经没什么好害怕的了(跟BZOJ3622一样) 然后这个f[i]怎么求呢? 最无脑的方法就是枚举位置,然后hash表记一下每种情况出现多少次然后把\sum_{情况个数}{情况次数 (情况次数 1)}加到f[枚举 阅读全文
posted @ 2019-03-05 21:27 Xu-daxia 阅读(163) 评论(0) 推荐(0) 编辑
摘要:题意 问边长为n的两个正方形中最大的相等子正方形。(n<=50) 题解 用到了二维hash,感觉和一维的不太一样。 对于列行有两个不同的进制数然后也是通过类似前缀和的方法差分出一个矩形的hash值 这样可以0(1)的算出一个正方形的hash值。 然后我们二分长度x,每一次遍历整个长度为x的子正方形n 阅读全文
posted @ 2018-08-28 09:19 Xu-daxia 阅读(146) 评论(0) 推荐(0) 编辑
摘要:题意 题解 考虑枚举每个位置,计算出在该位置上不同,其他位置上相同的字符串对数。考虑用字符串hash加密后,排序,看有多少个数字相同即可。这题难在卡常!不用自然溢出会T 阅读全文
posted @ 2018-08-24 22:28 Xu-daxia 阅读(204) 评论(0) 推荐(0) 编辑
摘要:题意 给你一个1~n排列,问有没有一个等差数列(长度至少为3) 题解 我居然自己想到了正解。 但我最后写挂了,所以我又看了题解。 我们维护了一个以权值为下标的01序列。 我们扫描整个序列。对于每一个正在扫描的数,我们判断以这个数的权值作为对称点,01序列是否对称。 这个序列用权值树状数组维护就行。 阅读全文
posted @ 2018-08-01 17:25 Xu-daxia 阅读(197) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示