09 2012 档案

摘要:这道题以前做过了 今天有做了一遍,发现比以前顺手多了,题意:给一个N*N的方阵,从[1,1]到[n,n]走K次,走过每个方格加上上面的数(每一个 方格只能向下 后向右走), 然后这个格上面的数变为0。求可取得的最大的值。题解:拆点 + 费用流 ;将 每一个点拆分成两个 , 为了 保证 只能算一次 流量为1 花费为 方格的值,有为了 保证 其他的路径 可以 从这个点 走过 再建一条 流量 为 inf 费用 为 0 的 边 1#include<cstdio>2#include<cstring>3#include<cmath>4#include<iostre 阅读全文
posted @ 2012-09-27 21:24 Szz 阅读(220) 评论(0) 推荐(0) 编辑
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=4403题意:给定 一个 数字字符串 ,在这些 字符间添加 一个 加号 和 多个 等号 求 有多少种 方法 得到 等式 使得左右相等 如 1212可以 分解为 12=12" and "1+2=1+2".题解 : 暴力枚举 ,因为i额 数据并不大 最多 15 位数 所以 枚举就可以1#include<cstdio>2#include<cstring>3#include<cmath>4#include<iostream>5#include 阅读全文
posted @ 2012-09-23 10:49 Szz 阅读(266) 评论(0) 推荐(0) 编辑
摘要:hdu 4289 control http://acm.hdu.edu.cn/showproblem.php?pid=4289我自己的代码:1#include<cstdio>2#include<cstring>3#include<cmath>4#include<iostream>5#include<algorithm>6#include<set>7#include<map>8#include<queue>9#include<vector>10#include<string>1 阅读全文
posted @ 2012-09-22 09:42 Szz 阅读(539) 评论(0) 推荐(0) 编辑
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=4289题意: 有n个城市,有个小偷想从其中一个城市逃到另一个城市,警察想要堵截这个小偷,知道了在每个城市堵截的成本,问如何安排在哪些城市堵截可以使得 小偷一定会被抓住,而且成本最低。题解 : 最大流 ; 将每一个点 查分成两个 ,x 和x+n 他们之间的流量为 在 x 点的花费 ,对于 右边相连的x,y l连接 x +n 到 y 和 y +n到 x 流量值 为 inf ,(这样保证了 流量 只受拆点边的限制) 最后 求 s 到 e+n 的 最值 即可 dinic 算法:1#include<cstdio& 阅读全文
posted @ 2012-09-21 22:11 Szz 阅读(463) 评论(1) 推荐(0) 编辑
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=4292题意:给出n个人喜欢的饮料种类以及食物种类,每个人只能取其中一种且数量为1,现在给出有f中食物以及d种饮料,以及他们各自的数量,问如何安、排食物以及饮料,使得最多的人得到一个食物以及一瓶饮料题解 :最大流 + 拆点 ;为了 保证 每一个人只有 一个 食物和 饮料 ,我们 要将 一个人 拆分成 2 个 ,他们之间 连线 流量 为 1 ;1#include<cstdio>2#include<cstring>3#include<cmath>4#include<iost 阅读全文
posted @ 2012-09-20 20:42 Szz 阅读(583) 评论(0) 推荐(0) 编辑
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=4293题意:有 n 个人,可任意分成若干组,然后每个人各提供一个信息,表示他们组前面有多少个人,后面有多少个人。问最多有多少个信息是不冲突的。题解: dp;首先 我们 可以将 这 n 个人的 位置 看作是 区间 1---n 这样 说 每一个人说 其所在的组 前面 有 a 个人 后面 有 b 个人 那么 他的 组就 就在 a+1 到 n - b ;我们将 说的情况相同的 人数 记录下来 (按照 其端点大小排序),这样 问题就变为了 在 1--n 这个区间上 不相交的 (带权 )区间的 的 和的 权值 最大为 多 阅读全文
posted @ 2012-09-19 20:52 Szz 阅读(259) 评论(0) 推荐(0) 编辑
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=4291 题意:A Short problemTime Limit: 2000/1000 MS (Java/Others)Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 739Accepted Submission(s): 277Problem Description According to a research, VIM users tend to have shorter fingers, compared with Emac.. 阅读全文
posted @ 2012-09-19 18:39 Szz 阅读(335) 评论(0) 推荐(0) 编辑
摘要:http://poj.org/problem?id=3463要 深入了解 dij 的标号技术,一但 被标记 ,怎不会 被第二次 标记 。//注意 是有向图。。。。/* 2 求s到t的最短路与次短路(这里要求只比最短路多1)的条数之和 3 4 联想到最小,次小的一种更新关系: 5 if(x<最小)更新最小,次小 6 else if(==最小)更新方法数 7 else if(x<次小)更新次小 8 else if(x==次小)更新方法数 9 10 同时记录s到u最短,次短路及方法数 1112 还是那个原理,第一次遇到的就是最优的,然后vi标记为真 13 方... 阅读全文
posted @ 2012-09-18 22:08 Szz 阅读(240) 评论(0) 推荐(0) 编辑
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=4288题意:给出一个有序集合,3种操作。插入一个数,删除一个数,都保证序列有序。以及求和 其中求和是将下标%5==3的所有数求和;题解: 线段树 + 离散化 + 离线处理一开始也是想的 线段树 ,但是 这个和以前的 做过的 一个线段树 不同的 是 ,如果 我们 删除 一个 元素后 ,那么 他的 下标 将会 改变 ,比赛是 不知 如何下手 。。。。。同样 是 用 5棵线段树 维护 ,s[0]表示 %5 == 1 的 下标,其他 依次类推 cnt,记录 子树的 元素个数。想要得到该区间内所有模5等3所有元素的和. 阅读全文
posted @ 2012-09-18 21:49 Szz 阅读(358) 评论(0) 推荐(0) 编辑
摘要:http://poj.org/problem?id=3635题意:有 n 个城市 ,每个 城市的 油价 不一样 ,已知 各 城市之间的距离 ,(假设 一 单位 距离 耗费一单位的 油量)一辆车 的 油箱 最多可以 装 c 升油,求从 s 到 e,的 最小 花费油量,如果不能到达 输出 impossible 。题解:一开始 自己 写了 个,到达每一点后枚举 可以 增加的 油量 结果 tle (太多 无用的状态了)。。。。。。dp[i][j] 表示 到达 城市 i 剩余油量 为 j 的 最小花费; 首先到达每个城市的后 要加的 油量 是 不确定 的 ,所以 我们要 将 每一个城市 拆成 c+ 1. 阅读全文
posted @ 2012-09-15 15:54 Szz 阅读(645) 评论(0) 推荐(0) 编辑
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=4272题意:题意:长度为n(n<=1000)的栈,栈顶元素可以与下面1~5个数中相同的元素消去,问最后能都完全消去。题解:状态压缩 dp 如何判断一个 物品 是否可以 被删除 ,首先 最坏的 情况是 2 0 0 0 0 1 1 1 1 2 假如我们要消除 栈顶的 2 ,0表示已经被删除了。我们要 知道 包括 本身在内的 10 个 数位 dp[h][i] 表示 高度 为 h 状态 为 i 能否 全部 消除 1 表示可以 0表示 不可以 1#include<cstdio>2#include< 阅读全文
posted @ 2012-09-14 20:00 Szz 阅读(516) 评论(1) 推荐(1) 编辑
摘要:http://poj.org/problem?id=3041题意:给你N*N的矩阵,里面有的方格里有小行星,你需要用激光射掉它。。。激光可以射掉一行 或者一列的小行星,问最小需要发射多少次这道题 很久 以前就做过了 ,现在有做了 一下 ,对 匈牙利 有 个 更好的了解。。。转自 别处 : 匈牙利算法是寻找最大匹配的优秀算法,那么与这个看上去一点也不像二分图的题来说有什么用处呢?让我们来做一个尝试:把样例数据里面的横坐标作为二分图的一部,纵坐标作为二分图的另一部,坐标为(x, y)的小行星表示为从横坐标x到纵坐标y的一段弧,就有了下图:可以看出,原问题变成了下面这个问题:给定一个二分图G = ( 阅读全文
posted @ 2012-09-13 20:17 Szz 阅读(228) 评论(0) 推荐(0) 编辑
摘要:以前就做过 二分图,在另一个 博客 里 ,现在 搬过来 了。。这里求的是最大匹配 匈牙利算法的基本知识: 百度百科: http://baike.baidu.com/view/501092.htm 维基百科: 这里面有邻接矩阵的模拟图 http://en.wikipedia.org/wiki/Hungarian_algorithm 二分图定理总结 原文地址 ======== 对于任意图: |最小边覆盖|+|最大匹配|=|V| 二分图的最大匹配=最小点覆盖数 对于二分图: 以下数值等价. 最大匹配 最小点覆盖 |V|-最大独立集(二分图or有向无环图) |V|-最小边覆盖数 |... 阅读全文
posted @ 2012-09-13 20:12 Szz 阅读(306) 评论(0) 推荐(0) 编辑
摘要:网络流入门—用于最大流的Dinic算法 转自:http://comzyh.tk/blog/archives/568/ “网络流博大精深”—sideman语 一个基本的网络流问题 感谢WHD的大力支持 最早知道网络流的内容便是最大流问题,最大流问题很好理解: 解释一定要通俗! 如右图所示,有一个管道系统,节点{1,2,3,4},有向管道{A,B,C,D,E},即有向图一张. [1]是源点,有无限的水量,[4]是汇点,管道容量如图所示.试问[4]点最大可接收的水的流量? 这便是简单的最大流问题,显然[4]点的最大流量为50 死理性派请注意:流量是单位时间内的,总可以了吧! 然而对于复杂... 阅读全文
posted @ 2012-09-13 18:26 Szz 阅读(5883) 评论(0) 推荐(3) 编辑
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=4284题意:题目:给出一些城市,从1出发,旅游一圈回到1,由于花费可能不够,所以选择一些城市打工,打工之前需要花费d买一个证,工资为c。选中的城市必须去工作一次,而且只能工作一次,问能不能完成旅行这道 题 比赛是想的是 先 floyd 在 暴搜 ,结果 tle 赛后 看到 有人 暴搜 过了 ,,,,好无语(自己 考虑的 情况太多了)。。。。。。 题解:首先 因为 我们 要用到的 只有 H 个点,所以我们先用 floyd 处理一下 ,构建一个 新图 ,在新图上处理,枚举 所有状态首先 暴搜 的 时间复杂度为 O 阅读全文
posted @ 2012-09-12 18:12 Szz 阅读(234) 评论(0) 推荐(0) 编辑
摘要:http://poj.org/problem?id=3522题意:求 最大边和最小边的 差值 最小的 生成树 ;首先求出 所有的 生成树 肯定 不行;对于 最小生成树 有 这样的性质 当最小边的权值固定时,最小生成树的最大边的权值也“命中注定”是固定的;而且 其他的生成树的最大边(最小边 固定 的 情况下)必然也是大于等于最小生成树的最大边;所以 我们可以 枚举 最小边 ,求 最小生成树 ,更新 解; 1#include<cstdio>2#include<cstring>3#include<cmath>4#include<iostream>5#i 阅读全文
posted @ 2012-09-11 21:16 Szz 阅读(192) 评论(0) 推荐(0) 编辑
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=4267转自:http://blog.csdn.net/acm_cxlove/article/details/7854526 题目:给出n个数,每次将一段区间内满足(i-l)%k==0 (r>=i>=l) 的数ai增加c http://acm.hdu.edu.cn/showproblem.php?pid=4267 比较容易往线段树上想的。但是由于更新的是一些离散的点,比较麻烦 可以考虑这些点的共性,总是隔几个,更新一个,那窝萌把区间内的数关于k的余数分组 这样每次更新的都是其中的一组,而且是连续的。 阅读全文
posted @ 2012-09-10 22:08 Szz 阅读(669) 评论(0) 推荐(0) 编辑
摘要:NumberTime Limit: 2000/1000 MS (Java/Others)Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 867Accepted Submission(s): 280Problem Description Here are two numbers A and B (0 < A <= B). If B cannot be divisible by A, and A and B are not co-prime numbers, we define A as a special n 阅读全文
posted @ 2012-09-10 20:45 Szz 阅读(294) 评论(0) 推荐(0) 编辑
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=4283题意:The TV shows such as You Are the One has been very popular. In order to meet the need of boys who are still single, TJUT hold the show itself. The show is hold in the Small hall, so it attract a lot of boys and girls. Now there are n boys enrolling... 阅读全文
posted @ 2012-09-09 22:01 Szz 阅读(769) 评论(0) 推荐(0) 编辑
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=4268这道题把,比赛时想到了是贪心 ,而且是 贪的方法 和看的解题报告差不多 但是,比赛时,我们找到了 几个 例子觉的不对,就没有 往下想 ,汗。。。。。。。。。。。。明显的贪心 :先按第一维排序,然后第二维然后对a的每个i,找出小于a[i].h的b.h,将对应的w塞到集合里刚才已经保证了第一维满足了然后贪心的从集合里面找a[i]能覆盖的最大的w1#include<cstdio>2#include<cstring>3#include<cmath>4#include<i 阅读全文
posted @ 2012-09-09 10:11 Szz 阅读(510) 评论(0) 推荐(0) 编辑
摘要:http://poj.org/problem?id=2723题意:有2n把钥匙,分成2组,给你每组的钥匙信息,并且每组的钥匙只能用一个。 有m个门,每个门有2个锁,只要打开一个锁这个门就开了。(顺序遇见m个门) 问你最多能够打开多少个门。题解:通过这道题 ,对 2-sat 有了 进一步的了解。。。。。 2-SAT主要是寻找不相容的点(建图),首先是我们把钥匙分为 选和不选,A和 !A对于 第一类 : 没两把钥匙 ,a和b ( 必然关系 ) 选 a 不选 b(a->!b) ,选 b 不选 a(b->!a);对于 第二类:每一扇门 有 a 锁和 b 锁,不开a 必开 b (!a-> 阅读全文
posted @ 2012-09-05 22:18 Szz 阅读(231) 评论(0) 推荐(0) 编辑
摘要:http://poj.org/problem?id=3678题意:一些点,点的取值可以是0或者1,没有告诉你具体取值。 一些边,有权值,有运算方式(并,或,异或),要求和这条边相连的两个点经过边上的运算后的结果是边的权值。 问你有没有可能把每个点赋值满足所有边的要求。 解题报告:(找矛盾 。必须 关系) a and b == 1, 这种情况a和b必须取1,所以连边a->a', b->b'.a and b == 0,这种情况a和b不能同时为1,所以连边a'->b, b'->a.a or b == 1, 这种情况a和b不能同时为0,所以连边a 阅读全文
posted @ 2012-09-05 20:57 Szz 阅读(630) 评论(0) 推荐(0) 编辑
摘要:http://poj.org/problem?id=3207题意: 平面上,一个圆,圆的边上按顺时针放着n个点。现在要连m条边,比如a,b,那么a到b可以从圆的内部连接,也可以从圆的外部连接。给你的信息中,每个点最多只会连接的一条边。问能不能连接这m条边,使这些边都不相交。 解题报告: 题意可能刚开始不是很好理解,比如1 5连边,2,6连边,由于点是顺序排列的,一画图就可以发现,这两条边必须一个从圆外面连,一个从内部连,否则就会相交。如果再加入3 7这条边,那么就必须相交了。 这样,就可以转化成标准的2-sta问题: 1:每个边看成2个点:分别表示在内部连接和在外部连接,只能选择一个。计作点i 阅读全文
posted @ 2012-09-05 20:48 Szz 阅读(239) 评论(0) 推荐(0) 编辑
摘要:poj 3207 http://blog.sina.com.cn/s/blog_64675f540100k13v.html poj 3678 http://blog.sina.com.cn/s/blog_64675f540100k15b.html poj 3683 http://blog.sina.com.cn/s/blog_64675f540100k1cd.html poj 3648 http://blog.sina.com.cn/s/blog_64675f540100k1g9.html poj 2723 http://blog.sina.com.cn/s/blog_64675f540100 阅读全文
posted @ 2012-09-05 20:41 Szz 阅读(4018) 评论(1) 推荐(1) 编辑
摘要:http://poj.org/problem?id=3683题意: 有n个婚礼,每个婚礼有起始时间si,结束时间ti,还有一个主持时间ti,ti必须安排在婚礼的开始或者结束, 主持由祭祀来做,但是只有一个祭祀,所以 各个婚礼的主持时间不能重复,问你有没有可能正常的安排主持时间,不能输出no,能的话要输出具体的答案:即每个婚礼的主持时间段是什么样的。2-sat 问题。建图: 对于每个婚礼,主持时间只有两种状态,而且各个婚礼之间的主持时间之间有相互限制,自然想到2-sat。 对于婚礼i和婚礼j。i表示在开始主持,i2表示在结束主持,j类似。 枚举每一对不同的i和j。 如果i和j冲突。连接i j2 阅读全文
posted @ 2012-09-05 20:38 Szz 阅读(429) 评论(0) 推荐(0) 编辑

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