摘要: 今天看书学习了二进制状态压缩。 感觉自己对位数不太敏感,容易左移右移搞错位,遇到从$0$开始直接懵。 二进制状态的基本特征是$n$的范围不会太大,根据题目设计状态,根据每一个阶段划分状态。 要熟练运用二进制基本运算。 位运算是个神奇的东西,在算法竞赛里估计算是一个非常重要的角色。 写题的时候先观察, 阅读全文
posted @ 2021-02-01 20:25 tuscjaf 阅读(89) 评论(0) 推荐(0) 编辑
摘要: 题目链接 思路 本来用的模拟,结果发现码力过蒻,写不出来。 然后搞了一个 \(hash\) ,存每一天的能力提升数,循环加减,判断能否被 $111(m个1)$ 整除,\(TLE.\) \(hash\) 可以写正解,但是最后看到一个 \(map\) ,学着打了一遍。 代码 #include <cstd 阅读全文
posted @ 2020-11-02 23:38 tuscjaf 阅读(78) 评论(1) 推荐(0) 编辑
摘要: 题目链接 思路 暴力 \(O(n^2).\) 期望得分: $9.$ 考虑到此题有两种做法: $1.$ \(O(n^2)\) 复杂度,每次询问的时候累加: ans = 0; for (int q = y;q <= n;q += x) { ans += a[q]; } printf ("%d\n",an 阅读全文
posted @ 2020-11-01 18:18 tuscjaf 阅读(62) 评论(0) 推荐(0) 编辑
摘要: 题目链接 思路1 可以发现,模的值呈周期性,一个周期 \(a \times b\) 个值。 如果 \(a \times b \le r -l.\) 那么直接输出周期里的最大值即可。 否则的话,就要查找区间 \(l \mod (a \times b) ~-~ r \mod (a \times b).\ 阅读全文
posted @ 2020-11-01 16:49 tuscjaf 阅读(48) 评论(0) 推荐(0) 编辑
摘要: 题目链接 思路 构造,不会。 直接暴搜。(考场上不敢写于是骗了点分) 据说还是最简单的题 \(XD\)。 代码 #include <cstdio> #include <cstring> #include <algorithm> using namespace std; const int MAXN 阅读全文
posted @ 2020-11-01 15:43 tuscjaf 阅读(61) 评论(0) 推荐(0) 编辑
摘要: 题目链接 思路 按照斜率每次清除整条路上的骷髅(暴力算法),存图选用 \(vector <string>\),考场上直接开超大的 \(char\) \(MLE\) 了。 代码 #include <cstdio> #include <cstring> #include <iostream> #incl 阅读全文
posted @ 2020-11-01 15:25 tuscjaf 阅读(72) 评论(0) 推荐(0) 编辑
摘要: @(稀疏表 ST表) 写在前面 有错误请指出 正文 内容 ST表 是一个维护区间 最大值 或 最小值 的数据结构 ST表 用 \(O(n \log n)\) 的时间预处理,\(O(1)\) 的时间查询 设 \(f[i][j]\) 表示为 下标 \(i\) 起,$2^j$ 个数中的最大值,用倍增实现 阅读全文
posted @ 2020-11-01 12:56 tuscjaf 阅读(119) 评论(0) 推荐(0) 编辑
摘要: 题目链接 思路 看了题解才会的,惭愧。 题目中可以发现不变量 \(S = A +B+ C.\) 变换这么多次,一定有一种优化的规律,我们可以往快速幂或者矩阵快速幂上考虑加速。此处矩阵快速幂似乎没戏。 当 \(A +B \le C\) 时,我们寻找 \(C\) 与不变量 \(S\) 之间的关系,\(C 阅读全文
posted @ 2020-10-31 17:00 tuscjaf 阅读(55) 评论(0) 推荐(0) 编辑
摘要: 题目链接 思路 模拟,按照紫书上的来,定义 \(p\) 传递着遍历字符串极为巧妙。 设置一个数组 \(buf[1024][1024]\) 用来存储图。 两个图合并就等于一张一张画在同一张图上,如果当前是白色就累加。 遇到 \('p'\) 就需要将边长除以二,分四种情况分类讨论。 代码 #includ 阅读全文
posted @ 2020-10-31 07:45 tuscjaf 阅读(49) 评论(0) 推荐(0) 编辑
摘要: 题目链接 思路 模拟,但是很明显 \(TLE\) ,一个数据都过不了。 我们发现这个小球掉落的次数有规律,而且跟奇偶有关。 第 $1$ 次到 $1$ 节点向左,第 $2$ 次向右,第 $3$ 次向左…… 第 $1$ 次到 $3$ 节点向左,第 $2$ 次向右,第 $3$ 次向左…… 那么我们开始找规 阅读全文
posted @ 2020-10-30 20:43 tuscjaf 阅读(55) 评论(0) 推荐(0) 编辑