题解:P7411 [USACO21FEB] Comfortable Cows S
就是一个深搜的过程,每次一头牛加入进来,做以下操作: 判断该位置是否已经有牛。若已经有牛,则说明之前的操作必须使该位置有牛才最优,因此此时可以将答案减去 $1$。 判断该位置是否满足题意。 判断该位置的四个相邻位置是否满足题意。 若有新加牛,...
就是一个深搜的过程,每次一头牛加入进来,做以下操作: 判断该位置是否已经有牛。若已经有牛,则说明之前的操作必须使该位置有牛才最优,因此此时可以将答案减去 $1$。 判断该位置是否满足题意。 判断该位置的四个相邻位置是否满足题意。 若有新加牛,...
由题可以知道,每一条边都是有向边。一个检查站只能保护一个环上的路口,即检查站的个数也是环的个数。 题目的第一问求最小花费,也就是就每个环上建一个检查站的最小花费之和。因此用 tarjan 求出每一个强联通分量以及该分量内的最小花费,最后求一个和。 1...
一道并查集的题目,实现的时候细节较多。 【注: 以下 fa 与 num 数组的 $1 \sim n$ 存第一个数组, $n + 1 \sim 2n$ 存第二个数组。】因为与字符有关系,所以可以用 map 来记录每一个变量/数字所出现的第一个位置并标记...
这是一道不错的贪心题目,同时也考察了选手们的读题仔细程度。先给出几个关键点: 只能对两个相邻且均为白色的格子进行染色,也就是说染色是不能够覆盖的 对于输入中的 1 的位置一定要为红色,其余位置随意。 以某行的第 $i$ 列 ($1 \le i...
这是一道练习二分的不错的题目。因为每组数据的答案的范围都可以被算出来,所以就可以对答案进行二分然后判断该答案是否合法即可,这样时间复杂度也会降到 $\log$ 级别,所以不会超时。 先来看看如何求答案的范围。为了方便程序的计算,以下保证 $n \le...
这道题目的本质还是对于四舍五入的理解。 对于一个位上的数 $x$,若 $0 \le x \le 4$,则会舍到 $0$;若 $5 \le x \le 9$,则会进一位到 $10$。而题目中的零数 $k$ 为 $0-9$,分别代表个、十、百 $\cdo...
由题可知路程所花费的时间一定为 $l$,所以我们要计算的便是等待红灯所花费的时间。 Luka 开始开车时,所有交通信号灯都呈红色,并且开始循环。 信号灯将按 $d$ 升序排列。 这两句话是本题的关键。因为有序读入红绿灯的距离,所以只要从 $1$ ...
枚举公差,因为 $1 \le a_i \le w$,所以易得公差 $d \le \frac{w}{n}$。 接下来枚举数列的第一个数为 $k$,则我们可以表示出该数列的第 $i$ 项为 $k + d \times (i - 1)$。因为数列的项数与公...
题目的大意便是找到 $|T - h_i \times 6 \times 10^{-3} - A|$ 为最小值的下标并输出 $i$。 因此我们先将这个值设为 0x3f3f3f3f,即正无穷,然后每次输入进行一次比较,若比原答案更优,则将其进行更新,并记...
对于 $a_{x,y}$,一共有三种情况,分别列举一下: 初始值为 $1$。 此时不需要经过变换,直接输出 $0$。 经过若干次变换都不会变为 $1$。 这种情况显然输出 $-1$。但是该如何判断它呢? 考虑一下,在 $n \times ...