摘要: 模与剩余类 a^x mod p \(a^x \mod p\) 的剩余类,以及大小 \(F_n \mod p\) 的循环节的大小,如斐波那契模 p 的循环节 Pisano Period 排列组合 \(\sum_{i=1}^kx_k=n, x_i >=1\) 的解的个数 \(\text{(stars a 阅读全文
posted @ 2024-10-26 13:09 o0yo 阅读(3) 评论(0) 推荐(0)
摘要: 如果右上角没有 run and debug button 记得把 setting 里 Intelli Sense Engine 改成 default,以及 Debug Shortcut 打开,Intelli Sense Mode 不能是 default 如果 cpp 文件提示 header not 阅读全文
posted @ 2024-08-16 15:12 o0yo 阅读(23) 评论(0) 推荐(0)
摘要: 几何 平面 三角形及公式 \(\cos \theta = \vec{a}*\vec{b} / (|\vec{a}||\vec{b}|)\) 面积:\(a*b\sin \theta\) 平面变换 点旋转 对于 \((x,y)\),顺时针旋转 \(\theta\),得到 \[\left(\begin{a 阅读全文
posted @ 2024-05-07 20:27 o0yo 阅读(9) 评论(0) 推荐(0)
摘要: 一些易错点 当进行 follower 进行日志复制时,应该用 m.Index + uint64(len(m.Entries)) 而不是 r.RaftLog.LastIndex() 去更新当前 follower 的 commitIndex,因为有可能 message 包含一个空的日志,这时候就不能简单 阅读全文
posted @ 2024-03-15 00:30 o0yo 阅读(9) 评论(0) 推荐(0)
摘要: qps Project #1 - Buffer Pool Manager, qps, 2323.73636 Project #2 Checkpoint #2: B+Tree, qps, 151510.33 Project #3 - Query Execution, time, 4812.76133s 阅读全文
posted @ 2024-01-22 20:49 o0yo 阅读(23) 评论(0) 推荐(0)
摘要: 一些问题 数据库里面一条数据就是一个 tuple,它有一个唯一 rid,由 page_id 和 slotnum 表示,当我们构建索引时,是选择一些列(每个 index 都有一个 schema,表示使用哪些列构建索引) tuple 序列化转化为字节数组,之后以这个字节作为 key,rid 作为 val 阅读全文
posted @ 2024-01-14 15:43 o0yo 阅读(24) 评论(0) 推荐(0)
摘要: 首先,上一个 task buffer pool 和这里的 b+tree 具体实现肯定不一样,关于具体的存储的层次也不一样; 在 buffer pool 里,数据以 page 为单位,在 b+tree 中,每个索引结点而言,存储了很多的 key-value,每个 value 对应一个子节点(子节点是用 阅读全文
posted @ 2023-07-19 16:03 o0yo 阅读(73) 评论(0) 推荐(0)
摘要: 这里记录一下 CF Div2 的前几题 阅读全文
posted @ 2023-05-17 18:11 o0yo 阅读(19) 评论(0) 推荐(0)
摘要: 运行测试以及格式化和提交 vscode 提供的 cmake 插件貌似可以直接点击最下面的 button 来直接构建、运行。 或者也可以手动构建运行 构建和运行 make lru_k_replacer_test -j$(nproc) ./test/lru_k_replacer_test make bu 阅读全文
posted @ 2023-04-29 17:18 o0yo 阅读(312) 评论(0) 推荐(0)
摘要: 树形dp P1352 没有上司的舞会 \(fa[u][i][j]\) 表示以 \(u\) 点为根的子树,已经遍历了根为\(u\)的子树的前\(i\)棵子树,选了\(j\)门课程(\(j\)个结点)的最大学分。伪代码如下 for u // 自下而上的遍历 for i for j // 枚举当前的分组里 阅读全文
posted @ 2023-04-26 16:10 o0yo 阅读(29) 评论(0) 推荐(0)