前言

pip默认使用的是国外的源,因此在国内下载速度会比较慢。为了提高下载速度,我们可以更换成国内一些服务商提供的镜像源。

阅读全文 »

前言

放在以前,我会推荐到freenom注册域名,毕竟是免费的嘛。
不过前几天,我原先的域名https://luckyfuy.cf/突然进不去了,查了一下不是DNS解析的问题,到freenom一看状态变成FRAUD了: Status: FRAUD 不知道是我的网站被误认为诈骗网站了还是freenom玩的把戏,免费的果然就是最贵的,所以我准备换一个域名。

阅读全文 »

简介

区间最值查询(range minimum/maximum query, RMQ)问题主要有两种解决方法:ST表(sparse table)线段树(segment tree),本文主要讲ST表。
ST表适合解决静态RMQ问题,即:

给定\(n\)个数,进行\(m\)次询问。对于每次询问,都需要回答区间\([l, r]\)中的最小值或最大值。

如果用暴力做法,每次都对区间\([x, y]\)扫描一遍,肯定是过不了的,所以我们需要引入ST表。ST表可以实现\(O(n \log n)\)的预处理和\(O(1)\)的查询。

阅读全文 »

简介

质数和最大公约数(GCD)是数论中最基础的部分之一。
本文将会讨论质数的判定与筛法以及欧几里得算法与扩展欧几里得算法。

阅读全文 »

简介

所谓最短路问题,就是求两节点间权值和最小的路径。
在一张图中,不一定存在最短路径,也不一定只存在唯一的最短路径。

阅读全文 »

简介

对拍是一种对学竞赛的同学非常有用的debug技能。在做题时,你肯定会遇到这样的情况:

???我不是过了样例吗???为什么WA了2个点???代码好像没什么问题啊???辣鸡评测姬

这个时候你就需要对拍来调试程序了。

对拍,说白了就是拿一个输入数据分别让你写的程序和标程(暴力程序)跑一遍,比较输出的数据。
对拍一般有以下3个步骤:

  1. 生成一组输入数据
  2. 把这组数据分别让两个程序运行一遍,生成输出数据
  3. 比较两组输出数据

那么为了实现对拍,我们需要:

  • 你的程序
  • 标程
  • 数据生成器
  • 对拍脚本(批处理脚本)

如果你懒得看下面的内容可以直接在GitHub下载程序。 本文仅适用于Windows系统。

阅读全文 »

简介

背包问题是动态规划中基础但重要的一种问题,其内容可以描述为:

\(n\)种物品和一个容量为\(W\)的背包,每种物品都有重量\(w_i\)和价值\(v_i\)两种属性,在所选物品不超过容量\(W\)的情况下,选择若干件物品放入背包使得总价值最大。

推荐阅读dd大佬的背包问题九讲

阅读全文 »

前言

MySQL是目前使用最广泛的关系数据库管理系统,最初由瑞典的MySQL AB开发。后来Sun收购了该公司,Sun又被Oracle收购,MySQL成为Oracle旗下产品。

MySQL的安装过程较为繁琐,所以我参考了网上的一些资料,整理出这篇文章。
本教程仅适用于Windows系统。

阅读全文 »

简介

位运算(bitwise operation)就是将数转换为二进制逐位运算。通常在处理器上,位运算的效率比乘除法高。

阅读全文 »

简介

所谓最小生成树(minimum spanning tree),就是一个无向图的极小连通子图,包含原图中的所有节点,且所有边的权值之和最小。因其是一棵树,所以得名最小生成树。

听不懂?那我们来炒一颗栗子。 对于这个无向图: E.G. 下图就是它的最小生成树,边权和为\(2 + 2 + 3 = 7\) 不过对于一部分图,比如上面炒的栗子,最小生成树有多种解,但是边权和是不变的:

阅读全文 »
0%