OI
「JSOI2008」球形空间产生器-高斯消元
· ☕ 2 min read

有一个球形空间产生器能够在 $n$ 维空间中产生一个坚硬的球体。现在,你被困在了这个 $n$ 维球体中,你只知道球面上 $n+1$ 个点的坐标,你需要以最快的速度确定这个 $n$ 维球体的球心坐标,以便于摧毁这个球形空间产生器。

提示:给出两个定义:

  1. 球心:到球面上任意一点距离都相等的点。
  2. 距离:设两个n为空间上的点A, B的坐标为$(a_1, a_2, \cdots , a_n)$ , $(b_1, b_2, \cdots , b_n)$,则 AB 的距离定义为:$dist = \sqrt{ \sum _ {i=1}^{n}(a_i - b_i)^2 }$

「HNOI2007」梦幻岛宝珠-背包dp
· ☕ 3 min read

给你 $N$ 颗宝石,每颗宝石都有重量 $w_i$ 和价值 $v_i$。要你从这些宝石中选取一些宝石,保证其总重量不超过 $W$ ,且总价值最大。

请你输出最大的总价值。


「SDOI2008」递归数列-矩阵快速幂
· ☕ 2 min read

一个由自然数组成的数列按下式定义:

对于 $i \leq k$ :$a_i = b_i$

对于 $i > k$ : $a_i = c_1a _ {i-1} + c_2a _ {i-2} + ... + c_ka _ {i-k}$

其中 $b_j$ 和 $c_j$ ( $1 \leq j \leq k$)是给定的自然数。写一个程序,给定自然数 $m \leq n$, 计算 $a_m + a _ {m+1} + a _ {m+2} + ... + a_n$, 并输出它除以给定自然数 $p$ 的余数的值。

对于 100% 的测试数据:

$1 \leq k \leq 15,1 \leq m \leq n \leq 10^{18},0 \le b_1, b_2,... b_k, c_1, c_2,..., c_k \leq 10^9,1 \leq p \leq 10^8$


「HEOI2016/TJOI2016」树-线段树
· ☕ 2 min read

在2016年,佳媛姐姐刚刚学习了树,非常开心。现在他想解决这样一个问题:给定一颗有根树(根为 $1$),有以下两种操作:

  1. 标记操作:对某个结点打上标记(在最开始,只有结点1有标记,其他结点均无标记,而且对于某个结点,可以打多次标记。)

  2. 询问操作:询问某个结点最近的一个打了标记的祖先(这个结点本身也算自己的祖先)

你能帮帮她吗?


「JLOI2011」飞行路线-分层图最短路
· ☕ 2 min read

Alice 和 Bob 现在要乘飞机旅行,他们选择了一家相对便宜的航空公司。该航空公司一共在 $n$ 个城市设有业务,设这些城市分别标记为 $0$ 到 $n-1$,一共有 $m$ 种航线,每种航线连接两个城市,并且航线有一定的价格。

Alice和Bob现在要从一个城市沿着航线到达另一个城市,途中可以进行转机。航空公司对他们这次旅行也推出优惠,他们可以免费在最多 $k$ 种航线上搭乘飞机。那么Alice和Bob这次出行最少花费多少?


「HNOI2014」世界树-虚树+树形dp
· ☕ 4 min read

世界树的形态可以用一个数学模型来描述:世界树中有 $n$ 个种族,种族的编号分别从 $1$ 到 $n$,分别生活在编号为 $1$ 到 $n$ 的聚居地上,种族的编号与其聚居地的编号相同。有的聚居地之间有双向的道路相连,道路的长度为 $1$。保证连接的方式会形成一棵树结构,即所有的聚居地之间可以互相到达,并且不会出现环。定义两个聚居地之间的距离为连接他们的道路的长度;例如,若聚居地 $a$ 和 $b$ 之间有道路,$b$ 和 $c$ 之间有道路,因为每条道路长度为 $1$ 而且又不可能出现环,所以 $a$ 与 $c$ 之间的距离为 $2$。

出于对公平的考虑,第 $i$ 年,世界树的国王需要授权 $m_i$ 个种族的聚居地为临时议事处。对于某个种族 $x$($x$ 为种族的编号),如果距离该种族最近的临时议事处为 $y$($y$ 为议事处所在聚居地的编号),则种族 $x$ 将接受 $y$ 议事处的管辖(如果有多个临时议事处到该聚居地的距离一样,则 $y$ 为其中编号最小的临时议事处)。

现在国王想知道,在 $q$ 年的时间里,每一年完成授权后,当年每个临时议事处将会管理多少个种族(议事处所在的聚居地也将接受该议事处管理)。 现在这个任务交给了以智慧著称的灵长类的你:程序猿。请帮国王完成这个任务吧。


「SHOI2014」概率充电器-树形dp
· ☕ 2 min read

著名的电子产品品牌 SHOI 刚刚发布了引领世界潮流的下一代电子产品—— 概率充电器:

“采用全新纳米级加工技术,实现元件与导线能否通电完全由真随机数决定!SHOI 概率充电器,您生活不可或缺的必需品!能充上电吗?现在就试试看吧!”

SHOI 概率充电器由 $n-1$ 条导线连通了 $n$ 个充电元件。进行充电时,每条导 线是否可以导电以概率决定,每一个充电元件自身是否直接进行充电也由概率 决定。随后电能可以从直接充电的元件经过通电的导线使得其他充电元件进行间接充电。

作为 SHOI 公司的忠实客户,你无法抑制自己购买 SHOI 产品的冲动。在排 了一个星期的长队之后终于入手了最新型号的 SHOI 概率充电器。你迫不及待地将 SHOI 概率充电器插入电源——这时你突然想知道,进入充电状态的元件个数的期望是多少呢?


「ZJOI2007」仓库建设-斜率优化
· ☕ 2 min read

L 公司有 $N$ 个工厂,由高到底分布在一座山上。工厂 $1$ 在山顶,工厂 $N$ 在山脚。

由于地形的不同,在不同工厂建立仓库的费用可能是不同的。第 $i$ 个工厂目前已有成品 $P_i$ 件,在第 $i$ 个工厂位置建立仓库的费用是 $C_i$ 。

对于没有建立仓库的工厂,其产品应被运往其他的仓库进行储藏,而由于 L 公司产品的对外销售处设置在山脚的工厂 $N$ ,故产品只能往山下运(即只能运往编号更大的工厂的仓库),当然运送产品也是需要费用的,假设一件产品运送 $1$ 个单位距离的费用是 $1$ 。

假设建立的仓库容量都都是足够大的,可以容下所有的产品。你将得到以下数据:

  • 工厂 $i$ 距离工厂 $1$ 的距离 $X_i$(其中 $X_1=0$ );
  • 工厂 $i$ 目前已有成品数量 $P_i$ ;
  • 在工厂 $i$ 建立仓库的费用 $C_i$ ;

请你帮助 L 公司寻找一个仓库建设的方案,使得总的费用(建造费用+运输费用)最小。