gyro永不抽风

ああああああああああああああああおおおおおおおおおおおおおおおお

310-01-ACOJ-0864 : 奶牛赛跑

题目大意:

有$n$头奶牛,在一个圆形的赛跑场地里赛跑。所有奶牛同时从起点出发,奶牛的速度都是匀速的,其中第$i$头牛的速度为$v_i$,跑道的长度为单位$1$。当跑得最快那头奶牛跑完$k$圈之后,比赛就结束了。

有时候,跑得快的奶牛可以比跑得慢的奶牛多绕赛场几圈,从而在一些时刻超过慢的奶牛。这就是最令观众激动的套圈事件了。请问在整个比赛过程中,套圈事件一共会发生多少次呢?

阅读全文 »

310-01-ACOJ-0488-统计节点

题目大意:

给定一棵有$n$个结点的树,给定树上$m$个点,称作标兵,再给定一个距离范围$k$。求树上有多少点,其本身不是标兵,且到每个标兵的距离都不超过$k$。每条边的长度固定为$1$。

题解:

对于这道题,要统计距离所有标兵的距离都不超过$k$的个数。换言之,就是统计节点,对于每一个满足要求的节点,要有其距离最远的标兵的距离不超过$k$。

有了这个想法,不妨构造出叶子节点均为标兵的且包含所有标兵的最小生成树。现在求这棵子树上的直径,或者说是这颗子树上的距离最远的两个端点。

所以题目就转换为统计所有节点,节点满足距离这两个端点都不超过$k$。(证明略,反证法,而且任意一条子树的直径都是可行的)。

阅读全文 »

307-15-背包的二进制优化

P2851 [USACO06DEC]最少的硬币The Fewest Coins

题目描述

Farmer John has gone to town to buy some farm supplies. Being a very efficient man, he always pays for his goods in such a way that the smallest number of coins changes hands, i.e., the number of coins he uses to pay plus the number of coins he receives in change is minimized. Help him to determine what this minimum number is.

FJ wants to buy T (1 ≤ T ≤ 10,000) cents of supplies. The currency system has N (1 ≤ N ≤ 100) different coins, with values V1, V2, ..., VN (1 ≤ Vi ≤ 120). Farmer John is carrying C1 coins of value V1, C2 coins of value V2, ...., and CN coins of value VN (0 ≤ Ci ≤ 10,000). The shopkeeper has an unlimited supply of all the coins, and always makes change in the most efficient manner (although Farmer John must be sure to pay in a way that makes it possible to make the correct change).

阅读全文 »

307-13-14-子集枚举DP

P3959 宝藏

题目描述

参与考古挖掘的小明得到了一份藏宝图,藏宝图上标出了$n$个深埋在地下的宝藏屋, 也给出了这$n$个宝藏屋之间可供开发的$m$条道路和它们的长度。

小明决心亲自前往挖掘所有宝藏屋中的宝藏。但是,每个宝藏屋距离地面都很远, 也就是说,从地面打通一条到某个宝藏屋的道路是很困难的,而开发宝藏屋之间的道路 则相对容易很多。

小明的决心感动了考古挖掘的赞助商,赞助商决定免费赞助他打通一条从地面到某 个宝藏屋的通道,通往哪个宝藏屋则由小明来决定。

在此基础上,小明还需要考虑如何开凿宝藏屋之间的道路。已经开凿出的道路可以 任意通行不消耗代价。每开凿出一条新道路,小明就会与考古队一起挖掘出由该条道路 所能到达的宝藏屋的宝藏。另外,小明不想开发无用道路,即两个已经被挖掘过的宝藏 屋之间的道路无需再开发。

新开发一条道路的代价是:$L \times K$

$L$代表这条道路的长度,$K$代表从赞助商帮你打通的宝藏屋到这条道路起点的宝藏屋所经过的 宝藏屋的数量(包括赞助商帮你打通的宝藏屋和这条道路起点的宝藏屋) 。

请你编写程序为小明选定由赞助商打通的宝藏屋和之后开凿的道路,使得工程总代 价最小,并输出这个最小值。

阅读全文 »

307-09-10矩阵乘法与快速幂


矩阵乘法

定义矩阵$A$,$B$,其中$A$的大小为$a \times b$,$B$的大小为$b \times c$,对于矩阵$C=AB$中的每一个元素$C(i.j),~i\in [1, a],~j\in [1,c]$,存在以下:

阅读全文 »

307-08-背包


P2160 [SHOI2007]书柜的尺寸

题目描述

Tom不喜欢那种一字长龙式的大书架,他只想要一个小书柜来存放他的系列工具书。Tom打算把书柜放在桌子的后面,这样需要查书的时候就可以不用起身离开了。

显然,这种书柜不能太大,Tom希望它的体积越小越好。另外,出于他的审美要求,他只想要一个三层的书柜。为了物尽其用,Tom规定每层必须至少放一本书。现在的问题是,Tom怎么分配他的工具书,才能让木匠造出最小的书柜来呢?

Tom很快意识到这是一个数学问题。每本书都有自己的高度hi和厚度ti。我们需要求的是一个分配方案,也就是要求把所有的书分配在S1、S2和S3三个非空集合里面的一个,不重复也不遗漏,那么,很明显,书柜正面表面积(S)的计算公式就是:

由于书柜的深度是固定的(显然,它应该等于那本最宽的书的长度),所以要求书柜的体积最小就是要求S最小。Tom离答案只有一步之遥了。不过很遗憾,Tom并不擅长于编程,于是他邀请你来帮助他解决这个问题。


阅读全文 »

307-07-逐行递推


逐行递推:$dp$在某种情况下按照一行一行的顺序进行递推。

P2704 [NOI2001]炮兵阵地

题目描述

司令部的将军们打算在N*M的网格地图上部署他们的炮兵部队。一个N*M的地图由N行M列组成,地图的每一格可能是山地(用“H” 表示),也可能是平原(用“P”表示),如下图。在每一格平原地形上最多可以布置一支炮兵部队(山地上不能够部署炮兵部队);一支炮兵部队在地图上的攻击范围如图中黑色区域所示:

如果在地图中的灰色所标识的平原上部署一支炮兵部队,则图中的黑色的网格表示它能够攻击到的区域:沿横向左右各两格,沿纵向上下各两格。图上其它白色网格均攻击不到。从图上可见炮兵的攻击范围不受地形的影响。 现在,将军们规划如何部署炮兵部队,在防止误伤的前提下(保证任何两支炮兵部队之间不能互相攻击,即任何一支炮兵部队都不在其他支炮兵部队的攻击范围内),在整个地图区域内最多能够摆放多少我军的炮兵部队。

阅读全文 »

这是一篇加密文章,内容可能是个人情感宣泄或者收费技术。如果你确实想看,请与我联系。
阅读全文 »

写在前面

在这里,我很感谢「她」,将我带进这个美妙的世界。

也感谢哔哩哔哩矿业公司、众贴吧,让我享受精神、视觉和听觉上的盛宴。

阅读全文 »

307-06-期望$dp$

概述

做一件事情成功:$p$,失败:$\overline{p} = 1-p$。

和性:$E[x+y] = E[x] + E[y]$

期望的意义就是对于做一件事情,期望多少次这件事情可以做成功。

P1291 [SHOI2002]百事世界杯之旅

题目描述

“……在2002年6月之前购买的百事任何饮料的瓶盖上都会有一个百事球星的名字。只要凑齐所有百事球星的名字,就可参加百事世界杯之旅的抽奖活动,获得球星背包,随声听,更克赴日韩观看世界杯。还不赶快行动!”

你关上电视,心想:假设有n个不同的球星名字,每个名字出现的概率相同,平均需要买几瓶饮料才能凑齐所有的名字呢?

阅读全文 »