10 2016 档案
摘要:bzoj3011[Usaco2012 Dec]Running Away From the Barn 题意: 给出以1号点为根的一棵有边权的树,问每个点的子树中与它距离小于l的点有多少个。树的大小≤200000。 题解: 每个节点维护一个带标记可并堆,dfs时对子节点的堆加上当前节点到该子节点的边权,
阅读全文
摘要:bzoj1747[Usaco2005 open]Expedition 探险 题意: n个加油站,每个坐标为x,可加油量为ai。一辆车初始油量为l,从起点到终点,每走一个单位就掉一个单位的油,问最少加油次数。n≤10000,坐标≤1000000。 题解: 先假设永远不加油,之后每走一段路之前如果油不够
阅读全文
摘要:bzoj3355[Usaco2004 Jan]有序奶牛 题意: 约翰的N头牛排成一行挤奶时,有确定的顺序。他拥有L条关于奶牛顺序的信息,所有的信息都写成“A在B的前面”这样的形式。请帮助约翰删除尽可能多的冗余信息,但要保证能推出原有的顺序。n≤1500。 题解: 首先拓扑排序,并给每个节点设定一个b
阅读全文
摘要:bzoj3062[Usaco2013 Feb]Taxi 题意: Bessie在农场上为其他奶牛提供出租车服务,她必须赶到这些奶牛的起始位置,并把他们带到它们的目的地。Bessie的车很小,所以她只能一次只能搭载一头奶牛。N只奶牛的起始位置和结束为止都是已知的,请确定Bessie从0点出发完成任务再到
阅读全文
摘要:bzoj1661[Usaco2006 Nov]Big Square 巨大正方形 题意: n*n的图中有一些J点,一些B点和一些空白点,问在空白点添加一个J点所能得到的有4个J点组成最大正方形面积。n≤100。 题解: 枚举两个点,然后根据这两个点组成的边尝试在4个上下两个方向组成四边形。 代码: 2
阅读全文
摘要:bzoj3016[Usaco2012 Nov]Clumsy Cows 题意: 给定长度为n的一个括号序列,每次修改可以修改一个位置的括号,若这个括号为’(‘,则修改为’)’,若这个括号为’)’,则修改为’(‘,问最少修改多少个使得原括号序列合法。 其中:()是合法的;若A是合法的,则(A)是合法的;
阅读全文
摘要:bzoj1733[Usaco2005 feb]Secret Milking Machine 神秘的挤奶机 题意: n点无向图。要从1走到nT次,问不重复经过每条路的方案中最长路径长度的最小值。n≤200,边权≤1000000。 题解: 二分答案,然后只插入权值不超过二分值的边,跑最大流。 代码: 2
阅读全文
摘要:bzoj3436小K的农场 题意: n个数,知道m条关系:a-b≥c、a-b≤c或a==b。问是否存在满足所有关系的情况。n≤10000,m≤10000。 题解: 差分约束。因为只要求是否满足,因此最短路最长路都可以。不过要注意如果是用spfa的bfs写法,每个点都必须作为源点判一次负环,因为图可能
阅读全文
摘要:bzoj2059[Usaco2010 Nov]Buying Feed 购买饲料 题意: 约翰开车来到镇上,他要带K吨饲料回家。如果他的车上有X吨饲料,每公里就要花费X^2元,开车D公里就需要D* X^2元。约翰可以从N家商店购买饲料,所有商店都在一个坐标轴上,第i家店的位置是Xi,饲料的售价为每吨C
阅读全文
摘要:1731: [Usaco2005 dec]Layout 排队布局 题意: n头奶牛在数轴上,不同奶牛可以在同个位置处,编号小的奶牛必须在前面。m条关系,一种是两头奶牛距离必须超过d,一种是两头奶牛距离不能超过d。要求:如果不存在情况满足要求则输出-1,奶牛1到n的距离可以为无限大输出-2,否则输出1
阅读全文
摘要:bzoj3384[Usaco2004 Nov]Apple Catching 接苹果 bzoj1750[Usaco2005 qua]Apple Catching 题意: 两棵树,每分钟会从其中一棵树上掉一个苹果下来,捡苹果的人只愿意W次,问初始在树1处最多能捡多少苹果。分钟数≤1000,W≤30。 题
阅读全文
摘要:bzoj1774[Usaco2009 Dec]Toll 过路费 题意: n点m边,从点a到b的费用为边权和加a到b经过点的点权最大值,给出q个询问问从a到b的最小费用。n≤200。 题解: 用先对点权排序,接下来用floyd算每两个点的最短路和最小费用,因为点权已经单调了,所以求路径的点权最大值之间
阅读全文
摘要:bzoj2200[Usaco2011 Jan]道路和航线 题意: n点图,两种边:有向边,权值可能为负数。无向边,权值为正数。求单源最短路。n≤25000,边数≤100000。 题解: 听说spfa会挂,于是写了dijkstra,WA了n次后才知道dijkstra不能处理负权边QAQ。后来在ZS大爷
阅读全文
摘要:bzoj1578[Usaco2009 Feb]Stock Market 股票市场 题意: 知道S只股票D天的价格。初始时有M元,问最后最多多少钱。S≤50,D≤10,M≤200000。 题解: 首先可以得出头日买了股票第二天立刻卖掉等价与拖几天再卖(因为可以卖掉后立刻买相同的数量)。故对每一天单独做
阅读全文
摘要:bzoj2020[Usaco2010 Jan]Buying Feed, II 题意: FJ开车去买食物,如果他的车上有X份食物。每走一里就花费X元。 城市总共E里路,FJ从0开始走,到E结束(不能往回走),要买K份食物。 城里有N个商店,每个商店的位置是Xi,有Fi份食物,每份Ci元。 问到达E并买
阅读全文
摘要:bzoj3043IncDec Sequence 题意: n个数,每次可以将区间l到r里的数+1或-1,问将它们变成同个数的最小操作次数和保证最小操作次数前提下有多少中可能。n≤100000。 题解: 先对原数组差分(得到的数组第一个为原数组第一个元素,之后的元素为原数组相邻元素之差),则原操作变为左
阅读全文
摘要:bzoj1702[Usaco2007 Mar]Gold Balanced Lineup 平衡的队列 题意: N头牛,一共K种特色。每头牛有多种特色。[i,j]段被称为balanced当且仅当K种特色在[i,j]内拥有次数相同。求最大的[i,j]段长度。n≤100000,k≤30。 题解: 得到式子:
阅读全文
摘要:bzoj1706[usaco2007 Nov]relays 奶牛接力跑 题意: 无向图,求刚好经过n条边的最小距离。边数≤100,n≤1000000。 题解: 边数≤100,说明点数不超过200。故可以用floyd。但要用一点技巧,即倍增floyd:定义最短路矩阵之间的乘法为对它们做floyd,则最
阅读全文
摘要:bzoj1734[Usaco2005 feb]Aggressive cows 愤怒的牛 题意: n头牛,第i头坐标为xi,将它们分成c组,要求相邻两组最小距离最大。n≤100000。 题解: 二分最小距离。 代码: 20160929
阅读全文
摘要:bzoj1652[Usaco2006 Feb]Treats for the Cows 题意: 管子里n个巧克力,第i个价值为ai。每天从左端点或右端点拿一个出来卖,收入为这个巧克力的价值*它是第几天卖出的。问最大价值。n≤2000 题解: dp:f[l][r]=max(f[l+1][r]+a[l]*
阅读全文
摘要:bzoj1676[Usaco2005 Feb]Feed Accounting 饲料计算 题意: 知道草料到来时F1kg,第D天F2kg。同时知道每头牛到来时间和离开时间,一牛一天吃1kg草料,问草料到来是第几天。 题解: 直接用区间左端点对应数组元素++,右端点+1对应数组元素--的方法,最后扫一下
阅读全文
摘要:背景: 学校的网站可以根据学号查学生姓名和成绩(三年后的补充:借助sql注入漏洞跳过密码,但是该网站现在已经被弃用了),所以我希望通过Python的爬虫得到年级所有同学的学号与姓名对应表。 实现: 首先需要算出所有学生的学号以方便查询。接下来要把学号和考试场次包装成待会要填入的信息,这可以用urll
阅读全文
摘要:bzoj1776[Usaco2010 Hol]cowpol 奶牛政坛 题意: 给出一个树,每个节点k个政党中的一个。问每个政党间最远的两个节点距离多少。节点数≤200000。 题解: 有个结论:每个政党所求两个节点其中一个必然是这个政党中深度最大的节点。因此枚举每个节点,计算该节点与节点所属政党深度
阅读全文
摘要:bzoj1703[Usaco2007 Mar]Ranking the Cows 奶牛排名 题意: n头奶牛,知道n对奶牛之间的产奶量大小,问想知道所有奶牛产奶量大小顺序至少还需知道几对。n≤1000。 题解: 每个大小关系看为一条有向边,对每头奶牛进行dfs,求每头奶牛可以到的奶牛数和可以到它的奶牛
阅读全文
摘要:bzoj1345[Baltic2007]序列问题Sequence 题意: n个数,合并ai和ai+1可以得到max(ai,ai+1),代价为max(ai,ai+1)。问合并n-1次最小代价为多少。n≤1000000。 题解: (来自题解,因为我不知道为什么这样做)维护一个单调递减栈。对于每个加入的元
阅读全文
摘要:bzoj1684[Usaco2005 Oct]Close Encounter 题意: 找一个分数它最接近给出一个分数。你要找的分数的分子分母的范围在1..32767。 题解: 枚举所求分数的分子,用其乘上给出分数得到一个浮点数分母,比较分母向上/下取整所得分数与答案比较。 代码: 20160927
阅读全文
摘要:bzoj1655[Usaco2006 Jan] Dollar Dayz 奶牛商店 题意: 商场里有K种工具,价格分别为1,2,…,K美元。约翰手里有N美元,必须花完。求购买组合方案。n≤1000,k≤100。 题解: 完全背包,不过要高精度。 代码: 1 #include <cstdio> 2 #i
阅读全文