【考试总结】hash1test -boshi
T1.turnover(营业额统计) 题意:自行百度,省选题 分析:这种只需要找前驱后继的数据结构题,实在犯不着手写 Splay,SegmentTree 之类的玩意,一个 set 搞定,开了 O2 跑得飞起,不开依旧稳稳的。 #include <algorithm> #include & 阅读更多…
T1.turnover(营业额统计) 题意:自行百度,省选题 分析:这种只需要找前驱后继的数据结构题,实在犯不着手写 Splay,SegmentTree 之类的玩意,一个 set 搞定,开了 O2 跑得飞起,不开依旧稳稳的。 #include <algorithm> #include & 阅读更多…
1. 题目 传送门= ̄ω ̄= 2. 题解 就是个八数码问题,改了一下变换方式而已。同样是 bfs+哈希记录状态。 哈希方法就是把数码的每一个格子里面的数字作为哈希值的每一位数字 哈希可以康托展开,这样就直接用数组哈希就行了。 我是直接用 pb_ds 哈希,直接水过。 代码: #include < 阅读更多…
1. 题目 传送门= ̄ω ̄= 2. 题解 首先如果暴搜,1506 的复杂度显然要 gg 那么就中途相遇即可。 首先移项,把右边的 n/2 个项移动到等号右边,这些项的系数全部都乘以-1 就行了 然后用 dfs 枚举等号左边 n/2 个未知数的值,复杂度 1503。把搜出来的等号左边的项的总和保存在哈 阅读更多…
1. 题目 传送门= ̄ω ̄= 2. 题解 搞个 set 哈希一下就行了,没啥好说的 代码: #include <bits/stdc++.h> using namespace std; int n,m; set<string> SET; void SIN(string& 阅读更多…
1. 题目 传送门= ̄ω ̄= 2. 题解 傻吊出题人,范围不写清楚 数据比较水,乱搞哈希就能过。 字符串哈希一般使用等比数列哈希 不过 tmd 比例必须用题目给出的 nc(脑残),不然过不了。 鬼知道为什么 傻吊出题人 代码: #include <cstdio> #include < 阅读更多…
题目描述 这天天气不错,hzhwcmhf 神犇给 VFleaKing 出了一道题: 给你一个长度为 N 的字符串 S,求有多少个不同的长度为 L 的子串。 子串的定义是 S[l]、S[l + 1]、… S[r] 这样连续的一段。 两个字符串被认为是不同的当且仅当某个位置上的字符不同。 V 阅读更多…
1. 题目 传送们= ̄ω ̄= 2. 题解 首先搞个 set 哈希一下存在的单词,对于文章中不存在的单词直接跳过就行了。 最普通的做法是枚举文章起点、终点,判断是否合法。然而会超时。 我们现在只枚举文章终点,我们需要均摊 O(1) 地获取文章起点。 起点需要满足什么条件呢? 首先,需要包含最多的要背的 阅读更多…
1. 题目 传送们= ̄ω ̄= 2. 题解 首先设 $sum[i][j]$FJ 的奶牛 1~n 中,有属性 j 的有多少头。显然这就是个前缀和(都说了是 sum 了)。 设区间 $[l+1,r]$是符合条件的(即是一个 “平衡” 队列),那么满足: $sum[r][1]-sum[l][1]=sum[r 阅读更多…
T1 巨胖的技能组合 题目: 考试最后做这道题的。 当时就听得 boshi 大喊一声:容斥!然后他就 Ak 了 然而我还是不会做 最后写了个 50 分的 dp 却得了 70 分。。。 正解:容斥+组合数 先假设所有的技能都能用无限次,根据插板法(考试时我还不会。。。)可以得到这样的情况方案数是: $ 阅读更多…
T1.dnf 题意:给定 n 个技能,其中 k 个只能各使用 Li 次。求使用 m 次技能的次数组合有几种 (某种技能的使用次数不同,组合就不同)。(n,m<=100000,k<=15) 分析:注意到 k<=15, 这很有可能是容斥的题。 如果每种技能都可以使用无限次,根据插板法, 阅读更多…