USACO
文章平均质量分 51
BrooksBUAA
这个作者很懒,什么都没留下…
展开
-
USACO 3.3解题思路报告
Riding the Fences给出一张无向图,求它的欧拉通路,按字典序输出经过的每个点。求出每个点的入度,用邻接矩阵存图,每读入一条连接u,v的边,mp[u][v]++,mp[v][u]++。 将找到的第一个入读为奇数的点作为起点,若没有入读为奇数的点,则将第一个入度不为零的点作为起点,进行深度优先搜索。每走一条边就给这条边的两个方向都-1,每当无路可走时,就将盖点加入答案的数组中,最后倒序输原创 2017-02-16 15:49:03 · 368 阅读 · 0 评论 -
USACO 5.4&&5.5解题报告
Canada Tour题目翻译:http://www.nocow.cn/index.php/Translate:USACO/tour可以视为两个人同时从起点出发,中间不相交,最终到终点时两人走过的城市数量的和的最大值。f[i][j]表示甲到达i城市,乙到达j城市时的城市数量和,则: f[i][j]=f[j][i]=max{f[i][k]}+1(k,j之间相连) ans=max{f[i][n]}(原创 2017-02-16 21:34:45 · 467 阅读 · 0 评论 -
USACO 5.3解题报告
Milk Measuring题目翻译:http://www.nocow.cn/index.php/Translate:USACO/milk4搜索,以桶的数量,桶的数量上限,剩余牛奶量为参量进行搜索。一个桶可以使用c=剩余牛奶量/桶的容量次,分别对使用1~c次该桶的情况进行搜索;同时,但凡出现桶的容量大于当前答案便进行剪枝。Window Area题目翻译:http://www.nocow.cn/ind原创 2017-02-16 20:52:37 · 362 阅读 · 0 评论 -
USACO 5.1&5.2解题报告
Fencing the Cows题目翻译:http://www.nocow.cn/index.php/Translate:USACO/fc凸包模板题,用Graham扫描法解决。Starry Night题目翻译:http://www.nocow.cn/index.php/Translate:USACO/starry搜索题,每发现一个星座便使用Floodfill算法找出完整星座并与已发现星座比对,若无符原创 2017-02-16 20:24:36 · 415 阅读 · 0 评论 -
USACO 4.4解题报告
Shuttle Puzzle题目翻译:http://www.nocow.cn/index.php/Translate:USACO/shuttle直接进行广度优先搜索,为了节省空间,将每个状态作为字符串,若set中已有该串,则不搜索该状态;否则将该串插入set并搜索该状态。为了使字典序最小,每次W只向右移动,B只向左移动。Pollutant Control题目翻译:http://www.nocow.c原创 2017-02-16 20:14:45 · 445 阅读 · 0 评论 -
USACO 4.3解题报告
Buy Low, Buy Lower给出一个数列,求其中最长的下降子序列以及构成该长度的方法数。(需要使用高精度)在数列末尾增加一个0 第一问,f[i]表示以a[i]为结尾的最长下降子序列的长度,则: f[i]=max{f[j]}+1(jStreet Race给出一张有向图,有源点和汇点,该图满足如下条件,称为“良好的跑道”: 每一个点都可以由源点到达; 任意一个点都可以到汇点; 汇点不通原创 2017-02-16 19:53:12 · 675 阅读 · 0 评论 -
USACO 4.2解题报告
Drainage Ditches求最大流。模板题,Dinic即可。The Perfect Stall给出每个奶牛所喜爱的牛棚,每个奶牛只在它喜爱的牛棚中才能产奶,每个牛棚最大容纳一只奶牛,求最多能让多少奶牛产奶。最大流问题,源点向每头奶牛连一条容量为1的边,每头奶牛向它喜爱的牛棚连一条容量为1的边,每个牛棚向汇点连一条容量为1的边,Dinic求出最大流。Job Processing每个工件要经过A种原创 2017-02-16 17:09:41 · 350 阅读 · 0 评论 -
USACO 4.1解题报告
Beef McNuggets给出不同大小的数字,每个数字可以用无限次,求不能用这些数字组成的最大数字。首先将所有数字排序,d[i]表示%a[n]=i的最小的数,根据现有的数进行递推,每一次新得到的数都是最小的且每一次答案都在增大。Fence Loops给出一张图中的所有边,求出其中的最小环朴素的深度优先搜索可以过。原创 2017-02-16 16:48:05 · 396 阅读 · 0 评论 -
USACO 3.4解题报告
American Heritage给出一个树的中序遍历和前序遍历,求出这颗树的后序遍历。递归处理,由中序遍历性质可知,在根节点前的点在根的左边,后边的点在根的右边。因此,每次从前序遍历中取出第一个点,在中序遍历中找出该点,递归该点的左区间和右区间,最后输出该点。Electric Fences给出一个三角形,求三角形内部的格点数。利用皮克定理,s=a+b/2-1,s为三角形面积,a为三角形内部格点数,原创 2017-02-16 16:25:33 · 317 阅读 · 0 评论 -
USACO 3.2解题思路报告
Factorials 求n!最后面的非零位。O(n)模拟,为防止溢出,每乘一次都要先除去末尾的零,然后模100000,最后输出最后一位即可。Stringsobits 求出长度为N(开头可以是0)且1的个数不超过L的二进制串中第k小的串。f[i][j]表示长度为i且1的个数不超过j的串的数量; 边界情况:f[i][0]=1(1<=i<=N),f[0][i]=1(1<=i<=L),f[i][j]=原创 2017-02-16 14:36:42 · 378 阅读 · 0 评论 -
USACO 3.1解题思路报告
Agri-Net 给出一堆点以及各个点之间的距离(以邻接矩阵形式给出),找出一种选路方案使所有点之间可以相互到达且路的长度和最小,求路的最小长度和。最小生成树,Kruskal算法即可解决。Score Inflation 给出限定的时间,每种题目的耗时和得分,每一种题目都有无限道,求出在有限时间内能得到的最高分数。完全背包dp,w[i]表示第i种题目的得分,t[i]表示第i种题目的耗时,f[i][原创 2017-02-16 11:35:21 · 451 阅读 · 0 评论 -
USACO 6.1解题报告
Postal Vans题目翻译:http://www.nocow.cn/index.php/Translate:USACO/vans计算哈密顿回路。实际上有递推式(需要使用高精度),可以使用矩阵快速幂加速,但是不使用矩阵快速幂也可以通过本题。 f[1]=0,f[2]=2,f[3]=4,f[4]=12; f[i]= 2*(f[i-1]+f[i-2]-f[i-3])+f[i-4];A Rectang原创 2017-02-16 21:59:29 · 425 阅读 · 0 评论