08 2010 档案

摘要:这题的大意是有N个店主,有M个供应商,对于N个店主,每个主有一定的需求量(对应着K种商品),M个供应商也对应着一定的供应量。然后相应的供应是有一定的费用。最后问说是否能满足需求,不满足的话输出-1,满足的话输出最小的费用。模型是比较裸,这里对于每个商品,都建个图来费用流,相应的建个超级源点和超级汇点。每次spfa去找,复杂度是O(V*E*E)。感谢:http://www.cppblog.com/I... 阅读全文
posted @ 2010-08-08 20:47 litstrong 阅读(343) 评论(0) 推荐(0) 编辑
摘要:题目的大意是给定若干(a,b,c)表示[a,b]之间有c个1,序列只能是0或者1,最后问在这些约束下,序列的最小长度。稍微变形就成了典型的差分约束问题,转化成S(b)-S(a)<=c这样的问题,然后用算导上的建模过程,a->b连条边,权值为c,因为这样的话,对于最后的dis(a)和dis(b),需要符合dis(b)<=dis(a)+w(a->b),也就是dis(b)-dis... 阅读全文
posted @ 2010-08-08 20:36 litstrong 阅读(1341) 评论(0) 推荐(0) 编辑
摘要:这题的大意是在整数坐标上,给定一些点,问说覆盖这些点的最小的正方形的面积,好像黑书上有道类似的,把正方形改成矩形,对于那道题的解法好像是,考虑到最后矩形至少会有一条边上有两个以上的点,所以枚举两个点,可能生成这个矩形,这样就把可能旋转的角度给离散化了,并且复杂度只有O(N^2)的,或者可能都有旋转卡壳的方法来解这个。但对于这道题,不知道这样离散可不可以,但想法都是把枚举数量减少下来,这里用到逼近迭... 阅读全文
posted @ 2010-08-06 13:39 litstrong 阅读(492) 评论(0) 推荐(0) 编辑
摘要:这题的大意是对于一个正整数的区间,有若干句话,判断第一句错误的位置,每句话所描述的意思是对于一个区间[a, b]有奇数个1或是偶数个1。[a,b]有1的个数的奇偶性可以通过判断[0,a-1]到[0,b]的奇偶性异同来判断。相同的话,用0表示,不同的话,用1表示。则这种关系是满足传递性的。对于上述转换过来的问题,与原问题是等价的。然后用并查集来维护这之间的关系就可以了。感谢:http://hi.ba... 阅读全文
posted @ 2010-08-06 13:28 litstrong 阅读(353) 评论(0) 推荐(0) 编辑
摘要:食物链确实是道不错的并查集的题,与以往的应用不同的是,这个是带权的,而带的权就是权两边端点的关系,这个关系要满足传递性。而划分集合的依据是,集合中的点可以确定这个关系。对于常用的并查集的应用的话,这个关系指的就是属于了。而这道题就是不断的维护一个保持这样关系的数据结构集合,如果当前要添加进来的某个关系与集合中的结构发生冲突,就是假话了。难点在于合并时的关系维护(这个简单,直接修改合并过来集合的根节... 阅读全文
posted @ 2010-08-06 12:01 litstrong 阅读(1201) 评论(0) 推荐(0) 编辑
摘要:这次在DIV1挂蛋了。250的题大意是这样的,给一个1<=x<1000000007,对x只能执行两种操作4x+3或者8x+7,问说最少能用几步到达1000000007 * a(a属于自然数),最多只能扩展到100000步,否则输出-1,刚开始以为BFS的话,状态数会太多,就找其中的规律,可惜不够敏感4x+3,8x+7都是2^n*x+2^n-1的这种形式,对于这种形式的两种操作是可以等价... 阅读全文
posted @ 2010-08-06 11:30 litstrong 阅读(172) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示