usaco
文章平均质量分 74
ahero_happy
这个作者很懒,什么都没留下…
展开
-
做usaco能获得什么
下决定做usaco真不容易,因为我以前觉得usaco是高中生的玩意,并且前面的题对我来说应该很简单,就不太想做。但至今天为止,做完一章后思想彻底改变了,故想写此文,鼓励更多的ACMer做usaco。 1、usaco的模式是前面一节没全部做完,不能开始做下一节。所以这就防止了ACMer做的净是水题。同时使得整个过程具有挑战性(因为几乎每章每节都会有一些题相对来说比较难或麻烦)。原创 2011-06-11 02:17:00 · 970 阅读 · 0 评论 -
usaco3.2kimbits
题意比较清晰:找第I大的最多有L个1的N位二进制数(N 分析:先求dp[i][j]表示首位(从左往右数)1在第i位(从右往左数)上,且1的总个数为j的方法数,其中dp[0][0]=1表示N个0。然后深搜,首先找到第一个1的位置,然后找到第二个。原创 2011-07-05 10:40:47 · 476 阅读 · 0 评论 -
usaco3.3Camelot
题意:现在有一些马和一个国王,马走“日”字,国王可以走向邻近的八个位置,如果国王和马在同一个格子里,国王可以选择骑上马,跟马一起走。现求总的最少步数(国王骑在马上时,走一步只算做一步)使的所有马和国王汇合在一个格子中。 分析:如果没有国王的话,原创 2011-07-06 18:11:29 · 428 阅读 · 0 评论 -
usaco3.3Riding the Fences输出欧拉通路
以前碰到过判断是否存在欧拉回路(无向图中节点度都为偶数,有向图中入度等于出度)或通路。这题是叫你输出路径,这思想很简单,先找起点,对于一个结点,随便找一个相邻结点走就行,这里还是有递归的。。。/* ID:kgdpgfy1 LANG:C++ PROG:fe原创 2011-07-05 23:55:10 · 517 阅读 · 0 评论 -
usaco4.1.2 有N块长木板,希望得到M块短木板,问最多可以裁多少块短木板
题意:给出N块长木板的长度,现在需要M块短木板,每块短木板的长度也给出,问最多可以裁多少块所需的短木板? 分析:刚开始想贪心,DP什么的未果,就只能搜索了。想了很多种方法,很多剪枝。终于把它给过了 (1)枚举得到短木板的块数比暴搜要原创 2011-07-09 17:46:34 · 989 阅读 · 0 评论 -
usaco3.4 fence4从一点看多边形,输出能看到的边
题意:从不在多边形上的一点看多边形,输出能看到的边(看到边的部分也算,当然只看到一个端点的不算) 分析:我们可以把那点看作一个光源,然后枚举从光源发出的光线,直接枚举每条光线是不可能的。只能枚举一些特殊的光线,即经过可见端点的光线(枚举时,看作一个很小的光束)。对于原创 2011-07-08 12:15:49 · 496 阅读 · 0 评论 -
usaco4.1nuggets DP给出一些数,求不能由这些数(每个数的个数任意)相加而成的最大的数
给出一些数a[n],求不能由它们(每个数的个数可以是任意个)相加而成的最大的数,它不存在或无穷则输出0。数的个数小于等于10,1 分析:第一想法:筛法。数据太大,不行。 第二种想法:将最大的数范围二分,想用容斥原理算出一定范围内能组原创 2011-07-08 16:25:35 · 602 阅读 · 0 评论