08 2014 档案

摘要:我的勇气和你的勇气加起来,对付这个世界总够了吧?去向这个世界发出我们的声音,我一个人是不敢的,有了你,我就敢。--《爱你就像爱生命》 阅读全文
posted @ 2014-08-30 09:19 悠悠我心。 阅读(133) 评论(0) 推荐(0)
摘要:大意:二维多重背包分析:二维多重背包代码: 1 #include 2 #include 3 #include 4 #include 5 using namespace std; 6 7 const int maxn = 105; 8 int dp[maxn][maxn]; 9 int a[... 阅读全文
posted @ 2014-08-29 22:34 悠悠我心。 阅读(180) 评论(0) 推荐(0)
摘要:大意:01背包分析:01背包代码: 1 #include 2 #include 3 #include 4 using namespace std; 5 6 const int maxn = 10005; 7 const int INF = 1000000000; 8 9 double dp... 阅读全文
posted @ 2014-08-29 22:31 悠悠我心。 阅读(171) 评论(0) 推荐(0)
摘要:大意:有n个物品,告诉你每个物品的价值问能否分成价值a、b两份使{a > b && a + b == 总价值 && a - b尽量小}分析:多重背包代码: 1 #include 2 #include 3 #include 4 using namespace std; 5 6 const in... 阅读全文
posted @ 2014-08-29 22:30 悠悠我心。 阅读(169) 评论(0) 推荐(0)
摘要:大意:有n种物品告诉你每种物品的价值和数量问你能拼凑出1--m之内的多少个数分析:多重背包代码: 1 #include 2 #include 3 #include 4 using namespace std; 5 6 const int maxn = 100005; 7 int dp[max... 阅读全文
posted @ 2014-08-28 21:58 悠悠我心。 阅读(176) 评论(0) 推荐(0)
摘要:大意:价值1, 2, 3, ……, 6的物品分别a1, a2, ……, a5, a6件问能否把这些物品分成两份,使其具有相同的价值(所有物品必须全部用上)分析:给个物品有多件,即多重背包只要看能不能将这些物品拼成 总价值 的 一半就可以了转化为01背包是用二进制优化,否则会超时代码: 1 #inc... 阅读全文
posted @ 2014-08-28 21:54 悠悠我心。 阅读(170) 评论(0) 推荐(0)
摘要:大意分析:多重背包,转化为01背包即可可以用二进制进行优化代码:(代码没有优化,下题是优化才可过的) 1 #include 2 #include 3 #include 4 using namespace std; 5 6 const int maxn = 105; 7 8 int n, m... 阅读全文
posted @ 2014-08-28 21:46 悠悠我心。 阅读(141) 评论(0) 推荐(0)
摘要:大意:01背包分析:01背包代码: 1 #include 2 #include 3 #include 4 #include 5 using namespace std; 6 7 const int maxn = 1005; 8 9 int n, v;10 int we[maxn], va... 阅读全文
posted @ 2014-08-28 21:41 悠悠我心。 阅读(129) 评论(0) 推荐(0)
摘要:T -Taxi Cab SchemeTime Limit:1000MSMemory Limit:30000KB64bit IO Format:%I64d & %I64uSubmitStatusPracticePOJ 2060Appoint description:DescriptionRunning... 阅读全文
posted @ 2014-08-28 21:37 悠悠我心。 阅读(215) 评论(0) 推荐(0)
摘要:我来了, 我来接你了。 阅读全文
posted @ 2014-08-28 17:15 悠悠我心。 阅读(91) 评论(0) 推荐(0)
摘要:大意:最大点独立集分析:最大点独立集代码: 1 #include 2 #include 3 #include 4 #include 5 using namespace std; 6 7 const int maxn = 505; 8 9 int n;10 int Link[maxn];1... 阅读全文
posted @ 2014-08-27 21:54 悠悠我心。 阅读(137) 评论(0) 推荐(0)
摘要:大意:有n个点,告诉你一些单向边,问多少条边能把所有的点覆盖【注意点能重复覆盖 比如4->1->2 5->3】分析:知识储备:传递闭包: 所谓传递,可以这么理解,对于节点j如果i能到k并且k能到j那么i能到j,这样用像floyed就能处理出任意两个点能否到达for(int k = 1; k 2 ... 阅读全文
posted @ 2014-08-27 21:52 悠悠我心。 阅读(162) 评论(0) 推荐(0)
摘要:题意:最大权匹配分析:最大全匹配代码: 1 #include 2 #include 3 #include 4 using namespace std; 5 6 const int maxn = 105; 7 const int INF = 2000000000; 8 9 bool Sx[m... 阅读全文
posted @ 2014-08-26 23:05 悠悠我心。 阅读(165) 评论(0) 推荐(0)
摘要:大意:有n个任务m个机器,告诉你n*m的矩阵表示每个任务在每个机器上完成需要的时间问所有任务完成的总时间最少?(比如第一个任务在第一分钟完成第二个任务在第二分钟完成 则总时间为1 + 2 = 3分析:该题自己做的时候没有思路后来在网上搜题解,感觉建图真是太厉害了假设最优情况下,个个任务需要的时间分... 阅读全文
posted @ 2014-08-26 22:33 悠悠我心。 阅读(210) 评论(0) 推荐(0)
摘要:大意:告诉你一些国家和一些单项路,每条路连接两个国家,告诉你之间的距离,现在要使每个国家都在一个环中求最小距离分析:这是做过的第二个多个环的并的问题每个点的入读和出度都为1把n个点拆点由于二分图最优匹配的性质可知每个点都会出现在匹配中相当于每个点出现一次左边为出度点 有边为入读点值得注意的是两个国家... 阅读全文
posted @ 2014-08-23 22:04 悠悠我心。 阅读(151) 评论(0) 推荐(0)
摘要:大意:有n个boy m个girle boy之间相互了解 girle之间相互了解又告诉你一些boy和girle之间相互了解的关系问最多选出多少人使其相互之间相互了解分析:左集合boy 右girle若boy与girle相互不了解则建一条边,这样,有边相连的便是不相互了解的那么最大点独立便是选取一些点使... 阅读全文
posted @ 2014-08-20 11:15 悠悠我心。 阅读(229) 评论(0) 推荐(0)
摘要:K -Guardian of DecencyTime Limit:3000MSMemory Limit:65536KB64bit IO Format:%I64d & %I64uSubmitStatusPracticePOJ 2771Appoint description:DescriptionFra... 阅读全文
posted @ 2014-08-20 10:46 悠悠我心。 阅读(233) 评论(0) 推荐(0)
摘要:题意:有n个人去m个星球 告诉你每个人想去哪些星球和每个星球最多容纳多少人,问能不能让所有人都满足分析:二分图多重匹配代码: 1 #include 2 #include 3 #include 4 #include 5 using namespace std; 6 7 const int m... 阅读全文
posted @ 2014-08-19 21:26 悠悠我心。 阅读(138) 评论(0) 推荐(0)
摘要:从那一天开始,我的世界一切的一切都开始改变了就像一个渴望自由的孩子突然看到一只自由飞翔的风筝于是他开始追逐风筝跟着向前跑只是因为他看到了那只风筝他只是很想知道高墙外面的世界或者说这只风筝拯救了这个孩子的世界他开始想着怎么去追逐这只这个自由的家伙他开始每天每天的都想着想着她是怎么飞在无边际的蓝天想着那... 阅读全文
posted @ 2014-08-19 18:58 悠悠我心。 阅读(345) 评论(0) 推荐(0)
摘要:大意:有n个任务,每个任务有三个属性:所在街区,最晚开始时间,执行需要时间告诉你一个矩阵代表街区间到达时间告诉你每个任务的三个属性问最少需要多少人去完成所有任务分析:floyd处理处任意两个街区的到达时间拆点 左边集合为n个任务 右边集合跟左边相同i任务能够到达j任务就从左集合引一条边到右集合求最... 阅读全文
posted @ 2014-08-19 11:48 悠悠我心。 阅读(157) 评论(0) 推荐(0)
摘要:大意:有一些课程,每个课程的上课时间在每周可能会有多节,你可以从中任选一个时间去听课,每周七天一天12节课 告诉你每节课的上课时间问在不冲突的情况下最多上几节课?分析:左集合课程右集合时间边为该节课对应的上课时间求最大匹配就行了代码: 1 #include 2 #include 3 #inclu... 阅读全文
posted @ 2014-08-18 19:59 悠悠我心。 阅读(136) 评论(0) 推荐(0)
摘要:E -Machine ScheduleTime Limit:1000MSMemory Limit:10000KB64bit IO Format:%I64d & %I64uSubmitStatusPracticePOJ 1325Appoint description:DescriptionAs we ... 阅读全文
posted @ 2014-08-18 19:52 悠悠我心。 阅读(195) 评论(0) 推荐(0)
摘要:分析:二分图最大匹配代码: 1 #include 2 #include 3 #include 4 #include 5 using namespace std; 6 7 const int maxn = 305; 8 9 int n;10 11 vector G[maxn];12 int... 阅读全文
posted @ 2014-08-18 19:43 悠悠我心。 阅读(136) 评论(0) 推荐(0)
摘要:题意:二分图最大匹配分析:二分图最大匹配代码: 1 #include 2 #include 3 #include 4 #include 5 using namespace std; 6 7 const int maxn = 205; 8 int n; 9 10 int Link[maxn]... 阅读全文
posted @ 2014-08-18 19:40 悠悠我心。 阅读(147) 评论(0) 推荐(0)
摘要:大意:如下图告诉你一个矩阵,让你用1 * x (x 为任意值) 的木板去铺符号* 可以覆盖问最少多少木板能够把所有的*覆盖掉4 4*.*..******...*.Boards 1, 2, 3 and 4 are placed as follows:1.2..333444...2.Board 2 ov... 阅读全文
posted @ 2014-08-18 19:36 悠悠我心。 阅读(1018) 评论(0) 推荐(0)
摘要:大意:有n个盒子,前者只有xyz均大于后者,前者才可把后者装下告诉你n个盒子的xyz求最少露在外面的盒子数思路:最小路径覆盖 = n - 最大匹配代码: 1 #include 2 #include 3 #include 4 #include 5 using namespace std; 6 ... 阅读全文
posted @ 2014-08-12 19:49 悠悠我心。 阅读(149) 评论(0) 推荐(0)
摘要:我觉得有必要粘一下英文:The Accomodation of StudentsTime Limit: 5000/1000 MS (Java/Others)Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 2502Accept... 阅读全文
posted @ 2014-08-12 19:22 悠悠我心。 阅读(245) 评论(0) 推荐(0)
摘要:大意:给你一个n行m列的矩阵1211每次操作可使一整行或一整列的一个数减少1(如果是0则不变)问最少多少次操作会使所有的数变为零分析:该题很像poj消灭外星人的那道题思路也差不很多将x轴当左集合,y轴当右集合,边权值为所在点的数字那么一条边就代表了矩阵中的一个点只要找出最小的权值去覆盖所有的边就能把... 阅读全文
posted @ 2014-08-11 21:04 悠悠我心。 阅读(242) 评论(0) 推荐(0)
摘要:大意:左图为一个坐标轴上的点 其中黑点代表ants 白点代表apple 问怎样安排ants匹配apple才能使人一两条边不想交分析:如左图,我们假设a->d,b->c为一个最佳匹配 交点为e那么ad+bc = ae+ ed + be + ec = (ae + ec) + (be + ed) 该值大于... 阅读全文
posted @ 2014-08-11 20:39 悠悠我心。 阅读(989) 评论(0) 推荐(0)
摘要:大意:有n个盒子,告诉你一些嵌套关系,比如a能放到b里 c能放到a里问最少使多少盒子露在外面分析:这里要求的是最少DAG的数量,也就是传说中的最小路径覆盖问题最小路径覆盖:公式:最小路径覆盖 = 节点个数 - 最大匹配这儿有一篇关于其解释,首先给出公式:DAG的最小路径覆盖数=DAG图中的节点数-相... 阅读全文
posted @ 2014-08-10 18:37 悠悠我心。 阅读(172) 评论(0) 推荐(0)
摘要:打出这些字的时候已经是很晚了,今天的夜很安静,寝室就留下了自己一个人,不过这样倒也很好,一个人能安安静静的学习一些东西以前总是抱怨自己为什么要去学那些没用的东西那时候在我看来,那些东西不是对我没有任何用处下载想起来,貌似每个人都会经历那样的年龄,然后慢慢的对自己以及对这个世界有新的看法吧有很大一部分... 阅读全文
posted @ 2014-08-09 00:22 悠悠我心。 阅读(430) 评论(0) 推荐(0)
摘要:大意:X.X.X..X. 如左图X代表怪物你可以用激光去消灭它们,一次可以消灭同一行或同一列的所有怪物,问最少多少次才可以把所有怪物消灭完思路:把x,y坐标分别看成左集合与右集合,若两个坐标有联系就建一条边最后求得是最小点覆盖正确性证明:每个怪物的坐标都是由一对x,y确定的,在二分图中每条边就代表... 阅读全文
posted @ 2014-08-08 23:14 悠悠我心。 阅读(227) 评论(0) 推荐(0)
摘要:Divide GroupsTime Limit: 2000/1000 MS (Java/Others)Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 1141Accepted Submission(s): 414Proble... 阅读全文
posted @ 2014-08-08 11:50 悠悠我心。 阅读(177) 评论(0) 推荐(0)
摘要:大意:已知有一个n*m的矩阵现在用1 * 2 的小木块去铺这个矩阵 ,矩阵中的黑点表示陷阱不可以铺,问能不能把除了陷阱之外的所有各自都铺满nm 2 #include 3 #include 4 using namespace std; 5 6 const int maxn = 33; ... 阅读全文
posted @ 2014-08-06 22:54 悠悠我心。 阅读(211) 评论(0) 推荐(0)
摘要:题意:给一个矩阵,m代表人H代表房子,现在想让人移动最少的步数回到房子中分析:可用二分图和网络流来写二分图:X集合为人Y集合为房子,人与每个房子的连一条边为-dist的边即可,求出最大权值,然后取反即可网络流:用费用流来做,人与房子之间建立容量为1,费用为dist的边,求出最小费用即可由于人与每个房... 阅读全文
posted @ 2014-08-06 22:40 悠悠我心。 阅读(421) 评论(0) 推荐(0)
摘要:大意:同学们去坐过山车,但是想要去做过山车必须是一个男同学一个女同学一起坐,现在告诉你每个女同学想要跟那些人一起坐,问最多能有多少对同学能够坐过山车男女同学人数都是 2 #include 3 #include 4 using namespace std; 5 6 const int maxn ... 阅读全文
posted @ 2014-08-06 22:28 悠悠我心。 阅读(379) 评论(0) 推荐(0)
摘要:昨天晚上开始看二分图,到现在基本的东西学会了我就写一下我自己的理解首先什么是二分图顾名思义就是能分成两个部分的图要注意的是,‘分’的是点并且这两个集合(这里我们称作X集合和Y集合)内部所有的点之间没有边相连,也就是说X集合中任何两点之间都不会有边相连, Y亦然定理1:无向图G为二分图的一个冲要条件是... 阅读全文
posted @ 2014-08-06 22:14 悠悠我心。 阅读(3616) 评论(0) 推荐(0)
摘要:时间过得很快快的让人喘不过气来你问我啊问问我为什么这么喜欢你把我问到一句话也说不出来然后你就胜利了啊也许我从来都不是喜欢你只是只是想要接近你然后了解你然后一起生活只是希望为了你去拼搏而已只是希望以后我们可以组建一个家庭而已只是想要一辈子和你生活而你我想,也就仅此而已吧仅仅是爱着你吧但是我害怕失去我害... 阅读全文
posted @ 2014-08-01 20:43 悠悠我心。 阅读(213) 评论(0) 推荐(0)