- 博客(17)
- 资源 (2)
- 收藏
- 关注
原创 light oj 1379 - Toll Management(两次最短路)
题意:n个点m条边,求s到t长度不超过p的最短路中最长边的最小值。思路:分别从源和汇做两次Dij,最后判断一下求最大值。
2015-09-29 23:28:20 742
原创 light oj 1281 - New Traffic System (最短路+dp思想)
题意:n个点,m条旧有向边,k条新有向边,现在求0到n-1的最短路,且最短路径上用到的新边数量不超过d。思路:dis数组开二维,dis[i][j]表示到节点j用i条新边的最短路。
2015-09-29 22:14:46 509
原创 D. Three Logos (CF Round #322 (Div.2) 瞎搞 分情况)
题意:三个logo,给出他们的长宽,问他们能不能无缝放在一个正方形内。思路:5种情况在纸上画一下就知道了。
2015-09-28 23:06:02 575
原创 C. Developing Skills (CF Round #322 (Div.2) 贪心)
题意:给出n个数,还有一个数k,用k去补这n个数,使得ai/10之和最大。思路:贪心。先把n个数按照x值从小到大排序,其中x等于 把ai变为10的倍数所需要要添加的最小值;然后用k尽量去把每个数按照x值填为10的倍数,如果k还有剩余尽量填就行了。具体看代码。
2015-09-28 23:00:22 435
原创 Minimum Cut (hdu 5452 离线LCA)
题意:n个点m条边,前n-1条边构成这个图的生成树,现在删除一些边使得图不联通,且要求删除的边中有且仅有一条生成树上的边,问最小要删除多少条边。思路:若要删除生成树上节点u的子树,那么就要删除u的子树中所有和另外一个树相连的边,还有减去u子树内部相连的边就是要删除的边数了。内部相连的边用LCA处理。
2015-09-21 23:08:52 582
原创 Network (hdu 3078 在线LCA)
题意:n个点n-1条边,每个点有一个权值value[i],q次询问(k,u,v),若k==0,令value[u]=v;若k>0,输出u到v路径上第k大的权值。思路:在线LCA算法,LCA转RMQ,添加一个pre数组记录路径。
2015-09-18 21:34:17 586
原创 Connections between cities (hdu 2874 LCA)
题意:n个点m条边c次询问,每次询问(u,v)之间的最短距离,若不联通,输出“Not connected”,否则输出最短距离,没有环。思路:LCA,但是给的图是一个森林,每次找到子树Tarjan,还有一种方法就是添加根root,把所有树连成一棵树再一次LCA。数组开小了它却返回TLE,郁闷我半天。。。
2015-09-18 16:22:14 545
原创 Destroying The Graph (poj 2125 最小点权覆盖)
题意:有一张有向图n个点m有向边,现在每次删除一个点的所有入边费用为W+,或者删除一个点的所有的出边费用为W-,问删除所有的边最小费用是多少。思路:最小点权覆盖问题,具体贴上《最小割模型在信息学竞赛中的应用》中的阐述:回顾与此模型相关的模型。简化权的条件后,可以借鉴的是二分图匹配的大流解法。 它加入了额外的源s和汇t,将匹配以一条条s->u->v->t形式的流路径“串联”起来。匹配的 限制是在点上,恰当地利用了流的容量限制。而点覆盖集的限制在边上,小割是大流的对偶问题,对偶往往是将问题的性质从点转边,从
2015-09-17 21:07:29 610
原创 Friendship (poj 1815 最小点割集+枚举)
题意:给出N个人之间的通讯关系,给出S和T,问切断S到T的联系最小要删去的点是多少,输出最小字典序解。思路:拆点,从1~N枚举删掉i后看最大流是否减少,若减少则i属于最小点割集。
2015-09-15 16:10:59 709 1
原创 How far away ? (hdu 2586 LCA)
题意:给出一棵n个节点的树及n-1条边,m次询问,每次询问求a,b之间的最短距离。思路:LCA模板题。具体算法思想:http://www.cppblog.com/keroro/archive/2013/05/17/200341.html
2015-09-14 23:39:23 487
原创 The Bonus Salary! (poj 3762 离散化+最小费用流)
题意:有n个任务要在k天时间内选部分完成,每个任务在每天有一个规定的时间,必须要在这个时间内做这个任务,完成一个任务会得到相应的分数,问能得到的最大分数是多少。思路:离散化+最小费用流,这一题和poj3680是一样的,先对时间离散化,然后添加源点S和汇点T,1->2,2->3,3->4.......T-1->T这样连边,容量为k,费用为0,对于每个任务起始时间u->v连边,容量为1,费用为-w。
2015-09-14 15:19:40 555
原创 The Windy's (poj 3686 最小费用最大流 建图经典)
题意:n个订单m个工作车间,每个订单只能在同一个车间全部完成,每个订单在每个车间完成的费用以矩阵给出,问完成所有订单的最低平均费用为多少。这题建图确实想不出来,看了别人的讲解,感觉太巧了!http://blog.csdn.net/weiguang_123/article/details/7881799
2015-09-14 12:58:38 541
原创 Intervals (poj 3680 离散化+最小费用最大流)
题意:有N个整数区间,每个区间有一个权值,从中取一些区间,使得任意整数点的重叠数不大于K,并且这些区间的总权值最大。思路:首先区间比较大,线段比较少,考虑到离散化操作。建图比较巧妙,S->1,1->2,2->3......T-1->T这样连边,容量为k,费用为0,然后对于每条线段u->v连边,费用为-w,容量为1.
2015-09-11 17:27:03 631
原创 Minimum Cost (poj 2516 求K次最小费用流)
题意:有n个客户,m个供应商,k种商品,给出n个客户对这k种商品的需求 和 这k种商品m个供应商的供给量,以及每种商品ki从供应商j运到客户i的费用,求最小费用。思路:如果只有一种商品那就是最普通的费用流问题了,现在变成了k种商品,那我们就求k次费用流相加就可以了。
2015-09-08 16:27:03 647
原创 Evacuation Plan (poj 2175 SPFA费用流消圈)
题意:n个办公楼和m个防空洞,每个大楼里有一定人数,每个防空洞有一个最大容量,现在告诉每个大楼的人数和每个防空洞的容量,还告诉一个撤离方案,问是否是最优方案,否则输出更优方案。思路:很容易想到是最小费用流,但是会超时。这是一个费用流消圈的问题,有这样一个定理:一个费用流是最小费用流的充要条件是这个费用流的残留网络中没有负费用圈。负圈是指费用总和是负数,且每条边的剩余流量大于0的圈。我们先根据已知条件构造出残留网络,在残留网络中从汇点出发用spfa找负圈。我是按照原图建边的,网上好多是简化了的。
2015-09-08 15:07:12 451
原创 Firing (poj 2987 最大权闭合图)
题意:公司有n个员工和m个从属关系,现在要辞退一些人,每辞退一个人 i 会到一个价值wi(正或者负),辞退一个人也要连同他的下属一起辞退,问能得到的最大收益是多少且最少的辞退人数是多少。思路:最大权闭合图,关键是求最少的辞退人数,这里就为最小割的取点数,具体证明看这位大神吧点击打开链接另外注意要用long long
2015-09-07 20:24:54 689
原创 Black And White (hdu 5113 dfs+剪枝)
题意: N*M的格子用K种颜色图,每种颜色有ci个,并且每两个相邻的格子不能图一样的颜色,输出一种可行方案。思路:dfs+剪枝,若某种颜色的数量大于剩下未图格子数量的一半则一定无解。
2015-09-02 10:02:57 480
数据结构课程设计通讯录管理系统
2015-09-11
数值计算实验代码
2015-09-11
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人