其他
2024.10.18模拟赛反思
2024.10.18模拟赛反思 感觉今天状态不太好,整个人比较恍惚。早自习我都不知道在干什么,考试的时候脑子里也是一团糨糊(晚上提前到 (12) 点睡觉,结果状态更差了)。 首先是 (T1),开始我以为简单无向连通图的“简单”是指的仙人掌,所以想了一个点双的做法。写到一半发现做法复杂了,用最小生成树就行,而且点双的做法仅适合仙人掌,不适合一般无向图,所以就换了一个最小生成树。赛后证明简单无向连通图
局部静态变量的初始化观测
局部静态变量的初始化观测//全局变量int global=0x11111;int main(int argc, char* argv[]){ //局部变量 int temp=0x160; global=global+temp; return 0;}6: int global=0x111111;7: int main(int argc, c
小心!这样分享 B 站视频会暴露身份
在 2022 年 6 月 10 日 0 点,B 站在视频的网址上加了个参数 ?vd_source=XXXXXXXXXXXXXXX,如图: 经过网友的测试,这个参数值很可能就是用户 ID 的 hash 值(简单来说就是用户身份),所以如果直接复制网址的话,是有可能被“开盒”的。 其实快手和抖音类似,分享时会有选项“分享视频时是否允许他人通过链接找到你”。你分享的视频,可以让其他人通过分
程序员修炼之道——第一章读书笔记
《程序员修炼之道——从小工到专家》第一章阅读笔记 一、章节主题 个人责任与职业素养 二、核心观点 个人责任的重要性:程序员需要对代码的质量和项目的成功负责,而不仅仅是完成任务。 职业素养:包括良好的编程习惯、持续学习和对工作的热情。 三、重要内容摘要 代码质量:高质量的代码是项目成功的关键,需要程序员在编码时注重细节和规范。 团队合作:良好的沟通和协作是团队成功的关键,程序员需要具备团队精神
通过 .reg注册表 文件来修改鼠标的一些设置
通过 .reg注册表 文件来修改鼠标的一些设置 示例 1: 修改双击速度 假设你想将鼠标的双击速度设置为较快的速度(例如300),你可以创建如下所示的 .reg 文件: reg 深色版本 Windows Registry Editor Version 5.00 [HKEY_CURRENT_USERControl PanelMouse] "DoubleClickSpeed"
Hive为什么依赖Mysql
Hive 之所以需要 MySQL 依赖,主要是因为 Hive 使用 MySQL(或其他关系型数据库)来存储其元数据。以下是详细的解释: 元数据存储 Hive 在执行查询和存储数据时,需要维护表的结构、列的数据类型、表之间的关系、分区信息等元数据。这些元数据通常存储在一个称为 Metastore 的地方。 为了实现这个功能,Hive 使用关系数据库(通常是 MySQL、PostgreSQL 或 O
win下使用choco安装docker到E盘,更改默认目录到E盘指定目录, 迁移已安装软件
一 使用 Chocolatey 安装 Docker 安装 Chocolatey(如果尚未安装): 打开命令提示符(以管理员身份运行),输入以下命令安装 Chocolatey: @"%SystemRoot%System32WindowsPowerShellv1.0powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Byp
在docker搭建自己的邮件服务器
请看:https://www.jianshu.com/p/d94b9495f7f9 ExtMail的优势与特点: 开源、免费,符合中国人习惯,使用不受限制 拥有自主著作权、产权,用户不必担心版权问题 安装简便,友善的全Web方式后台管理 丰富的增值模块,应对不同客户的需求 与LisPush手机电邮无缝对接,满足移动办公要求 提供VPS模板,利用LisVP云主机系统实
2024.10.18考试总结
本文于 github 博客同步更新。 A: 考虑如果现在在点 (i),能否走到编号更小的点。如果可以,那么必然存在一个 (j geq i>a_{j}) 使得你可以走到点 (a_{j})。 那么我们对于每个 (i),将区间 (left(a_{i}, iright]) 加一,从 (x) 开始能走到的编号最小的点也就是 (x) 左侧最近的 0 的位置。 带修问题可以直接用线段树维护,查询的时候使用
[学习笔记] Minimax 算法和 Alpha-Beta 剪枝
题目引入 在博弈论中,有这样一类题目: 两个玩家 A、B 轮流行动,A 先手,B 后手。 有一个结果,A 想要使它最大,B 想要使它最小。 Minimax 算法 把每个状态作为一个点,每个转移作为一条边建出一棵树。这棵树好像叫博弈树。 两种实现(都没有真正地建树): 直接搜索(可能有结点被重复经过) 记忆化搜索。 现在我们不考虑 当前的 先手和后手,而是考虑当前结点是 一开始的 先手还是后
PYNQ Z2 读取xadc外部通道电压
使用XADC 或者JTAG只能读取XADC的内部电压, 而无法读取外部通道的电压 现在使用xsysmon.h库里面的函数进行XADC外部通道的电压 为了方便观察,增加了PL GPIO KEY LED进行观察 1. 配置ZYNQ7000 勾选FCLK_RESET0 勾选UART0, 这是BANK电压 勾选PS给PL提供的时钟, 设置PS的输入时钟 配置DDR 2.添加两个axi gpio并进
vscode关闭声音
解决策略 寻找顺序 左下角齿轮形状-->setting(设置)-->sounds(声音)-->sounds-->off 吐槽 真的是很煞笔的设计,不知道脑子是糊了浆糊吗?主要有这么几点: 莫名其妙的开启(一直以为电脑出问题了) 如果只设置音量为0,一旦重新打开又会复原。居然改不了,这个设置有什么意义吗??????就算不是关闭声音,想把声音调整一下都不行。 只能通过按钮关
数据结构与算法 课程随记
因为有时候需要在不同设备编辑同一份文档,本地不太方便了,先在放着博客园比较省事吧。 但是博客园是不是快要四了啊,没事再整一个个人博客吧。 内容非常杂,因为不想去上课所以还是有点东西不会,就记录一下查不会东西的时候学会的东西。没什么参考价值。 Class https://www.runoob.com/cplusplus/cpp-classes-objects.html 大纲 定义成员函数,(无论p
KMP 以及 border 性质的一些运用
一个 kmp 学了 (n) 遍终于学懂的屑菜 bot。 下文默认文本串为 (s),模式串为 (t)。 前缀函数 定义 (pi_i) 表示前缀为 (i) 的子串中的最长公共前后缀(border)长度。 求取 暴力 (O(n ^ 3)) 去暴力枚举。 高效算法 第一个重要的观察是相邻的前缀函数值至多增加 (1)。 那么我们就是要往前查找一个尽可能大的 (pi) 满足其往后一位仍然能匹配,或直到 bor
负载均衡常见的算法有哪些?
随机法 随机法 是最简单粗暴的负载均衡算法。 如果没有配置权重的话,所有的服务器被访问到的概率都是相同的。如果配置权重的话,权重越高的服务器被访问的概率就越大。 未加权重的随机算法适合于服务器性能相近的集群,其中每个服务器承载相同的负载。加权随机算法适合于服务器性能不等的集群,权重的存在可以使请求分配更加合理化。 不过,随机算法有一个比较明显的缺陷:部分机器在一段时间之内无法被随机到,毕
ZROI-21-CSP7连-DAY 7 T2
题面 挂个 pdf 题面下载 算法 有点像扫描线? 容易想到离散化坐标点, 那么对于离散化之后的坐标 (x), 粗略来看, 其能分开区间的个数即为 (displaystylesum_{i = 1}^{n} left[{l_i < x < R_i}right]) 这个可以用类似于差分的方法解决, 每次对于一个区间 (left(l_i, r_iright)) , 将其区间整体加 (1) 发
FlashAttention逐代解析与公式推导
Standard Attention 标准Attention计算可以简化为: [O = softmax(QK^T)V tag{1} ]此处忽略了Attention Mask和维度归一化因子(1/sqrt{d})。 公式(1)的标准计算方式是分解成三步: [S = QK^T tag{2} ][P=softmax(S) tag{3} ][O = PV tag{4} ]但这样做的问题在于,假设(Q,K
Educational Codeforces Round 166 (Rated for Div. 2) - VP记录
比赛链接 正常发挥 A. Verify Password 挨个判断即可,秒了。 B. Increase/Decrease/Copy 因为 (b) 的长度只比 (a) 的长度大一,所以一定只会复制一次,分以下两种情况讨论: 在将 (a_i) 化为 (b_i) 的过程中经过了 (b_{n+1}),此时只需要额外消耗复制的一次操作次数即可。 没有经过,这时需要找离 (b_{n+1}) 最近的来化成
Sparse Table
Sparse Table 可用于解决这样的问题:给出一个 (n) 个元素的数组 (a_1, a_2, cdots, a_n),支持查询操作计算区间 ([l,r]) 的最小值(或最大值)。这种问题被称为区间最值查询问题(Range Minimum/Maximum Query,简称 RMQ 问题)。预处理的时间复杂度为 (O(n log n)),预处理后数组 (a) 的值不可以修改,一次查询操作的时间
《程序员修炼之道:从小工到专家》读书笔记 02
职业发展与沟通技巧 编程并非仅是编码 强调程序员在职业生涯中需要具备丰富的技能,包括解决问题的能力和良好的沟通能力,团队合作也至关重要。 建立个人品牌 开源项目和技术博客: 提出通过开源贡献和发布技术博客来展示自己的能力,增加行业内的知名度,并建立自己的个人品牌。 反馈与代码审查 代码审查的价值: 通过同事之间的代码审查可以提升代码质量,也能促进团队成员的学习与成长。 接受反馈: 积极接受他人的