10 2023 档案
CSP-J 2023 题解
摘要:CSP-J 2023 题解 T1 小苹果 这个题直接遍历枚举必定 TLE,这是 CCF 的出题风格,每题 T1 巨水无比,但是往往又需要一些思维。 这道题我们可以发现每一轮操作都会拿走 个苹果,所以每次让 减去 \(1 + (n - 1) / 3\
位运算
摘要:位运算 Part1. 基础运算 & 与 两个位都为1时,结果才为1 | 或 两个位都为0时,结果才为0 ^ 异或 两个位相同为0,相异为1 ~ 取反 0变1,1变0 << 左移 各二进位全部左移若干位,高位丢弃,低位补0 >> 右移 各二进位全部右移若干位,对无符号数,高位补0,有符号数,各编译器处
DFS
摘要:0x01 剪枝 Part1.剪枝方法 是一种常见的算法,大部分情况下,很少会爆搜为正解的题目。因为 的时间复杂度特别高。 我们可以先写一段 dfs 的伪代码 int ans = 最坏情况, now; // now 为当前答案 void dfs(传入数值) { if (
ST 表
摘要:ST 表 定义 ST 表是用于解决 可重复贡献问题 的数据结构,通俗来说,一般可以解决区间查询问题。 区间最值和 我们以最大值为例,然后可以再推广到最小值和区间 首先你应该知道的是,ST表是利用倍增思想来缩短时间的。而倍增就体现在他数组的定义中:对于
2023.10.14 做题记录
摘要:2023.10.14 做题记录 P5595 歌唱比赛 一个非常简单的贪心。 先判断什么时候是 -1 ,将字符串从头开始往后遍历,Z 的右边不能有 X,Y,如果有则直接输出 -1。 因为是 SPJ,如果该字符串有答案的话,倒着看,字母是谁的就随便给一个大的数,如果是 ,则小的数为