摘要: ACM比赛经验:推荐此篇文章打印,与模板放在一起。1. 比赛中评测会有些慢,偶尔还会碰到隔10分钟以上才返回结果的情况,这段时间不能等结果,必须开工其他题,如果WA,两道题同时做。交完每道题都要先打印。2. 比赛时发的饭不是让你当时就吃的,那是给你赛后吃的。基本上比赛中前几名的队都没人吃,除非领先很多。3. 很多选手,尤其是第一次参加比赛的,到一个新环境,全当旅游了,参观的参观,找同学的找同学,玩玩乐乐就把正事抛到脑后了,结果比赛自然没什么好成绩,这样的例子太多了。所以到参赛地后要时刻不忘自己是来比赛的,好好休息、备战。 4. 参赛前一天要睡10个小时以上,非常有助于保持比赛中的精力,很多时候 阅读全文
posted @ 2011-08-24 11:28 我们一直在努力 阅读(221) 评论(0) 推荐(0) 编辑
摘要: 原文连接:http://www.cnblogs.com/dyllove98/archive/2012/04/07/2461865.html#commentform我们常常听闻AI(Artificial Intelligence人工智能)这个名词,比如Dota里面的AI地图。写这篇文章的时候,最新版的Dota AI是6.72f,估计过几天6.73的AI也要出来了。很多Dota玩家喜欢玩AI地图练练感觉和补刀,可以这样说,Dota 地图成功的加入了AI元素,是近几年Dota风靡全球不可缺少的因素之一。一、知识点讲解那么,到底什么是AI呢?首先我们来了解一下人工智能(AI)的具体定义。“人工智能”( 阅读全文
posted @ 2012-07-13 10:14 我们一直在努力 阅读(288) 评论(0) 推荐(0) 编辑
摘要: 原因是你目前打开的是.h文件,而C++程序中,.h的头文件是不参与编译的。你只需要把其他.c文件或者.cpp文件,双击打开,这时在编译就不会提示了! 阅读全文
posted @ 2012-06-18 09:23 我们一直在努力 阅读(623) 评论(0) 推荐(0) 编辑
摘要: 第五届河南省程序设计大赛最终排名 阅读全文
posted @ 2012-05-14 16:15 我们一直在努力 阅读(150) 评论(0) 推荐(0) 编辑
摘要: 转自:http://www.byvoid.com/blog/match-km/[二分图带权匹配与最佳匹配]什么是二分图的带权匹配?二分图的带权匹配就是求出一个匹配集合,使得集合中边的权值之和最大或最小。而二分图的最佳匹配则一定为完备匹配,在此基础上,才要求匹配的边权值之和最大或最小。二分图的带权匹配与最佳匹配不等价,也不互相包含。我们可以使用KM算法实现求二分图的最佳匹配。方法我不再赘述,可以参考tianyi的讲解。KM算法可以实现为O(N^3)。[KM算法的几种转化]KM算法是求最大权完备匹配,如果要求最小权完备匹配怎么办?方法很简单,只需将所有的边权值取其相反数,求最大权完备匹配,匹配的值 阅读全文
posted @ 2012-05-08 21:35 我们一直在努力 阅读(201) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=247这是第三届省赛的题,一直不会做,今天看了下其他的博客感觉挺好理解的,就照着写了下。View Code 1 #include <iostream> 2 #include <cstring> 3 #include <cstdio> 4 #include <queue> 5 using namespace std; 6 const int MAXM=1000500; 7 const int MAXN=100100; 8 struct nod 阅读全文
posted @ 2012-05-08 19:39 我们一直在努力 阅读(224) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://poj.org/problem?id=1734第一次用ppt画图,挺不错的,一直想找个好的画图工具,以前用windows自带的和word画,画出来的图要多难看有多难看。这题的关键是路径的保存。View Code 1 #include <cstdio> 2 #include <cstring> 3 #include <iostream> 4 using namespace std; 5 const int MAX=1234567; 6 #define N 110 7 int g[N][N]; 8 int dis[N][N]; 9 int 阅读全文
posted @ 2012-05-08 15:02 我们一直在努力 阅读(264) 评论(1) 推荐(1) 编辑
摘要: 题目链接:http://poj.org/problem?id=2226这道题跟上一道很相似不同之处在于这里不是整行或者整列的删,而是连续的几个可以一起删,不连的不能删,这就要对原图进行处理,对原有的图行由上到下,列由左到右进行编号,作为x集合,在同一行且连续的编号一样,然后对原有的图列由左到右,行由上到下重新编号,作为y集合。之后就是二分图求最大匹配。View Code 1 #include <iostream> 2 #include <cstring> 3 #include <cstdio> 4 using namespace std; 5 const i 阅读全文
posted @ 2012-05-07 20:54 我们一直在努力 阅读(173) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://poj.org/problem?id=2594建图很重要!!!大致题意: 给出一个由n个顶点m条边组成的有向无环图。求最少可以同时存在多少路径,使得这些路径可以覆盖所有的点(注:每个点可以被多条路径覆盖)。大致思路: 最小路径覆盖的一点小小变形,由于这里的点可以被重复覆盖,所以除了按照普通求最小路径覆盖的方式建立二分图以外,还要对原图用floyd求一遍传递闭包,并更新二分图。接下来用点数n减去最大匹配得到的就是答案【最小路径覆盖(原图不一定是二分图,但必须是有向图,拆点构造二分图)】:在图中找一些路径,使之覆盖了图中的所有顶点,且任何一个顶点有且只有一条路径与之关联.. 阅读全文
posted @ 2012-05-07 16:14 我们一直在努力 阅读(258) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2119题意很好理解,就是每次可以删除一行或者一列数,问最少几次可以把所有的1都变成0,也就是都删完。利用二分图解行表示二分图的一部分,列表示一部分,为1的点表示连一条边,然后求最小顶点覆盖数。最小顶点覆盖即表示用最少的顶点把所有的边都关联到。最小顶点覆盖 = 最大匹配。此外二分图还有最小路径覆盖,意思是用最少的边把图中所有的顶点都遍历到。最小路径覆盖 = 顶点数 - 最大匹配。View Code 1 #include <iostream> 2 #include <cstring&g 阅读全文
posted @ 2012-05-07 15:08 我们一直在努力 阅读(258) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2232矩阵很神奇。相信大家不出意外,对于下面这个矩阵还是好构造的。第0排代表第0号格子的机器人,可以到达个格子,可见2号格子是不可达的。这个矩阵的N次幂,就是机器人走多少步形成的局面。上面矩阵的2次幂:可以得到上面的矩阵,这是什么意思呢?第0排的3表示0号格子的机器人通过2步有3种方法到0号格子。哪三种?0-0-0,0-1-0,0-3-0。就这三种。同样每个格子的数也代表了不同的意义。那么题中所求的最终回到每个格子一个机器人的状态。也就是在这个矩阵中不同行不同列放置4个机器人的可能情况的总数用dfs 阅读全文
posted @ 2012-05-06 17:06 我们一直在努力 阅读(422) 评论(0) 推荐(0) 编辑