nearby p3047 usaco cows

USACO 2023 US Open Platinum Triples of Cows

洛谷传送门 LOJ 传送门 hot tea. 一次删点操作的影响太大了,考虑添加虚点以减小影响(相同的套路在 CF1882E2 Two Permutations (Hard Version) 也出现过)。 具体而言,我们把第 \(i\) 条边 \((u, v)\) 变成 \((u, n + i), ......
Platinum Triples USACO 2023 Open

USACO 2020.12 Platinum Spaceship

洛谷传送门 LOJ 传送门 考虑剥路径最大值 dp,设 \(f_{k, i, j}\) 为 \(i \to j\) 中按的最大的按钮 \(\le k\) 的方案数。转移枚举按下最大值按钮的点 \(w\),有: \[f_{k, i, j} = \sum\limits_{(u, w), (w, v) \ ......
Spaceship Platinum 2020.12 USACO 2020

USACO 2021.12 Platinum Paired Up

洛谷传送门 LOJ 传送门 如果 \(T = 1\),可以把重量全部取相反数转化成 \(T = 2\)。接下来只考虑 \(T = 2\) 的情况。 下文的 \(m\) 代表原题中的 \(K\)。 设第 \(i\) 个 G 牛的位置和重量分别为 \(a_{0, i}, b_{0, i}\),第 \(i ......
Platinum 2021.12 Paired USACO 2021

[USACO] Piggy Back

[USACO] Piggy Back 题目大概意思是一个无向图,Bessie 从 1 号仓库走到 n 号(每次花费 x), Elsie 从 2 号仓库走到 n 号(每次花费 y),如果两个人走同一条路花费 z,求总花费最小。 跑三遍最短路,别得到 Bessie 从 1 号仓库出发的最短路,Elsie ......
USACO Piggy Back

洛谷 P8192 - [USACO22FEB] Paint by Rectangles P

比较抽象的一个题。 首先先考虑 \(T=1\),如果我们建一张图,将图上所有横线与竖线的交点看作图上的点,相邻的有线段相连的点看作图上的边的话,那么显然会得到一张平面图,而我们要计算的是平面图上面的个数,根据公式 \(F=E-V+C+1\),其中 \(C\) 为这张图中连通块的个数。设 \(c\) ......
Rectangles P8192 USACO Paint 8192

洛谷P3607 [USACO17JAN] Subsequence Reversal P 题解

Subsequence Reversal P 思路: 发现,翻转一个子序列,就意味着两两互换子序列里面的东西。 于是我们就可以设 \(f[l][r][L][R]\) 表示: \(\max[1,l)=L,\min(r,n]=R\) 时的最长长度。 则边界为: \(L>R\) 时, \(f=-\inft ......
题解 Subsequence Reversal P3607 USACO

洛谷P3118 [USACO15JAN] Moovie Mooving G 题解

Moovie Mooving G 设 \(f[i][S]\) 表示在第 \(i\) 场(注意是场,不是部)电影时,已经看了 \(S\) 里面的电影是否合法。 然后贪心地取 \(|S|\) 最小的状态保存。光荣 MLE 了, \(21\%\)。 发现当一场电影结束后,无论这一场是在哪里看的都没关系。 ......
题解 Mooving Moovie P3118 USACO

[USACO17JAN] Promotion Counting P 题解

[USACO17JAN] Promotion Counting P 题解 前言 好久没写题解了,今天趁我心情好赶紧水一篇。 思路 首先拿到这题,关键词检索:子树,比 \(p_i\) 大的,树状数组!现在考虑如何去掉其他子树的贡献……emm,我直接在算贡献的时候去掉其他子树的贡献不就好了! 当然,暴力 ......
题解 Promotion Counting USACO JAN

[USACO08FEB]meteor Shower S题解(bfs)

题目描述 贝茜听说一场特别的流星雨即将到来:这些流星会撞向地球,并摧毁它们所撞击的任何东西。她为自己的安全感到焦虑,发誓要找到一个安全的地方(一个永远不会被流星摧毁的地方)。 如果将牧场放入一个直角坐标系中,贝茜现在的位置是原点,并且,贝茜不能踏上一块被流星砸过的土地。 根据预报,一共有 \(M\) ......
题解 Shower meteor USACO FEB

P1457 [USACO2.1] 城堡 The Castle 题解

分析 感觉没有蓝题难度 一道 bfs 题目,相较于大部分 bfs 题,它较为复杂,但分析一下还是很好水过的。 建立墙时,可以用三维数组,\(wall_{~i, ~j, ~pos}\) 表示 第 \(i\) 行第 \(j\) 列 \(pos\) 方向有墙。 观察发现,\(8 = 2^3,4 = 2^2 ......
题解 城堡 Castle USACO2 P1457

P9019 [USACO23JAN] Tractor Paths P 题解

Description 有 \(n\) 个区间,第 \(i\) 个区间为 \([l_i,r_i]\)。保证 \(l_1<l_2<\cdots<l_n\) 且 \(r_1<r_2<\cdots<r_n\)。其中一部分区间是特殊的,输入会给定。 如果第 \(i\) 个区间和第 \(j\) 个区间相交,那 ......
题解 Tractor P9019 USACO Paths

[题解]P3656 [USACO17FEB] Why Did the Cow Cross the Road I P

思路 首先,\(A\) 和 \(B\) 只会移动一个,那么,我们分开来算,我们先假定 \(B\) 会动。 不妨令 \(A\) 与 \(b\) 连边的端点为 \(x,y\)。如果有线段 \(pq\) 能与 \(xy\) 相交,一定满足如下其中一条规律: \(p < x \wedge q > y\) \ ......
题解 the P3656 Cross USACO

题解 [USACO04OPEN] Turning in Homework G

题目链接 先将所有作业按位置排序。 直接贪心显然是不行的,因为我们没有办法确定对于一个时间较久的作业,是在原地等待,还是在未来的某个节点返回,并且无法确定是那个节点,所以只能考虑 \(dp\)。 对于此类可以倒来倒去的问题,通常考虑区间 \(dp\),若设 \(f_{i,j}\) 表示完成区间 \( ......
题解 Homework Turning USACO OPEN

P2951 [USACO09OPEN] Hide and Seek S 题解

Problem 题目概述 给你一个无向图,边权都为 \(1\) ,求:离 \(1\) 号点最远的点的编号、最远的距离、有几个点是离 \(1\) 号点最远的。 思路 直接用:优先队列 \(BFS\),先求出 \(1\) 号点到每个点的最短路,存到 \(dis\) 数组中,然后再求 \(max(dis[ ......
题解 P2951 USACO 2951 OPEN

P1522 [USACO2.4] 牛的旅行 Cow Tours

Problem 题目简述 给你两个独立的联通块,求:在两个联通块上各找一个点连起来,使得新的联通块的直径的最小值。 思路 本题主要做法:\(Floyd\)。 首先,Floyd求出任意两个点之间的最短路。 枚举每一个点,求出以这个点能走到的所有点中距离的最大值。(一定在能走到的情况下,不然默认距离就是 ......
USACO2 P1522 USACO Tours 1522

P3147 [USACO16OPEN] 262144 P

Link 这个题有一个很特殊的点,就是最大值不会超过28,可以想一下最多可以合并多少次。 那么常规的区间dp是不能使用的,就要采用特殊的形式, 因为很难的确定应该怎么转移,那么就换一种思路,转移的对象变成另外一个端点。 \(dp_{i,j}\) 表示\(i\)在左边,达到\(j\)的话的右端点位置 ......
262144 P3147 USACO 3147 OPEN

P6066 [USACO05JAN] Watchcow S

prologue 这个题这么水的一个板子题。 analysis 这个题目我们正反建两条边,在跑欧拉回路的时候,看这个边是不是被走过,走过就不走,跳过这个边。如果没走,就走这条边并且标记这个边走过了。 code time #include <bits/stdc++.h> using namespace ......
Watchcow P6066 USACO 6066 JAN

P5838 [USACO19DEC] Milk Visits G

P5838 [USACO19DEC] Milk Visits G Luogu P5838 Solution 提供一种奇特的 \(\mathcal O(\dfrac{n\sqrt n\log n}{\omega})\) 的做法。 树链剖分转化成序列问题。然后变成了询问一个区间 \(l,r\) 是否存在 ......
Visits P5838 USACO 5838 Milk

洛谷P3612 [USACO17JAN] Secret Cow Code S

[USACO17JAN] Secret Cow Code S 题面翻译 奶牛正在试验秘密代码,并设计了一种方法来创建一个无限长的字符串作为其代码的一部分使用。 给定一个字符串,让后面的字符旋转一次(每一次正确的旋转,最后一个字符都会成为新的第一个字符)。也就是说,给定一个初始字符串,之后的每一步都会 ......
Secret P3612 USACO 3612 Code

P3128 [USACO15DEC] Max Flow P

P3128 [USACO15DEC] Max Flow P 有好几种解决方法,这里讲第一种树状数组 主要是线段树没调好 区间修改,单点查询,很明显我们可以用树状数组,简单又方便 树状数组 #include<bits/stdc++.h> using namespace std; const int N ......
P3128 USACO 3128 Flow DEC

洛谷P2341 [USACO03FALL] 受欢迎的牛 G

P2341 受欢迎的牛 G 题解 这题我们需要了解强连通分量 一、定义 在有向图 \(G\) 中,如果两个顶点 \(u\) , \(v\) 间有一条从 \(u\) 到 \(v\) 的有向路径,同时还有一条从 \(v\) 到 \(u\) 的有向路径,则称两个顶点强连通。如果有向图 \(G\) 的每两个 ......
P2341 USACO 2341 FALL 03

P4824 [USACO15FEB] Censoring S

P4824 [USACO15FEB] Censoring S KMP+栈 同样的套路,先找B的最长前后缀,然后与A匹配 不同的是要删除A中的B,特殊的是删除之后可能会产生新的B 那我们可以利用栈的思想,利用f数组,记录A每一位置上B的匹配程度,这样删除时,直接回到上一个匹配程度,以防漏掉。 利用栈记 ......
Censoring P4824 USACO 4824 FEB

一个树状数组求逆序对的进阶 [USACO17JAN] Promotion Counting P

题面就这样,就是在树上求一个逆序对但是我笨笨地求了对于每一个下属有几个上司能力比他低还一遍就写对了,结果发现看错题目了难得一遍过,但是没有完全过 ......
逆序 数组 Promotion Counting USACO

P9013 [USACO23JAN] Find and Replace S

前言 这是考试的时候放的一道题,考的时候没做出来。 调了一个晚上,心态爆炸,故作此篇。顺便,鸣谢泥土笨笨大佬的题解,给我的代码提供了强有力的对拍参照。 正题 首先看到题目,虽然字符串长度不超过 \(10^5\),但是还是嫌多;再一看,至多只有52个字符。 那么从这个数据范围入手,思考可以按照变换前后 ......
Replace P9013 USACO 9013 Find

P5836 [USACO19DEC] Milk Visits S - 洛谷题解

题目链接 :[P5836] USACO19DEC] Milk Visits S - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 这道题可以用并查集来解决。 题目中每个结点只有两个状态:H和G。那么我们可以推断出,只有当起点和终点间每个结点的状态相同但是起点(或者终点或起点到终点之间 ......
题解 Visits P5836 USACO 5836

[USACO23OPEN] Pareidolia S

......
Pareidolia USACO OPEN 23

题解 P9019 [USACO23JAN] Tractor Paths P

显然,对于给定的 \(l,r\),最短路可以贪心求出,即每次走与当前区间相交且左端点最大的区间,这个可以用倍增加速。 定义 \(f_{i,j}\) 表示从区间 \(i\) 往右走 \(j\) 步后到达的区间,\(g_{i,j}\) 表示往左走的情况。 正反遍历一下即可求出 \(f_{i,1}\) 和 ......
题解 Tractor P9019 USACO Paths

题解 P8905 [USACO22DEC] Strongest Friendship Group G

显然不同连通块互不影响,答案分开算。 对于当前连通块,假如我们希望所选的子图中最小的度数为 \(x\),那么只需要保留度数大于等于 \(x\) 的所有点,然后将这些点能连的边连上,再保留其中度数合法的,以此类推,最后剩下的点数就是子图最大的大小。 这些操作就相当于,对于当前图,如果度数最小的点不满足 ......
题解 Friendship Strongest P8905 Group

题解 STEAD - Steady Cow Assignment

我一眼费用流,等等不太对,感觉还是最大流好点。 题目描述 给你一堆奶牛和牛棚,每个奶牛可以匹配多个牛棚,而每个奶牛对每个牛棚之间的满意度是不一样的,并且每个牛棚的容量也是不一样的,问你最终可以有多少个牛匹配的牛棚满意度之和最小。 具体思路 首先,源点与每个奶牛之间连一条流量为 \(1\) 的边。 要 ......
题解 Assignment Steady STEAD Cow

P3101 [USACO14JAN] Ski Course Rating G

思路 晃一眼题目,这不和这道题一样吗? 但是再仔细一看,有有些不一样,要求了起点至少到多少个点,不要求起点互通,求的也不是最小的 \(d\),而是 \(d\) 之和。 首先,很容易地发现,这道题再去二分肯定不现实,每个点都去二分一次,所需要的时间也很恐怖。 所以我们尝试从其他的方面入手。 可以发现, ......
Course Rating P3101 USACO 3101