题目大意:一棵有n个节点的有根树,1为根节点,边带权,表示删掉这条边的代价。现在要删掉一些边,使叶子节点不能到达根节点。但是,每次删除的边的代价不能超过limit,删掉的边的总代价不能超过m,求最小的limit的可能取值。 题目分析:二分枚举limit,定义状态dp(u)表示将u与它管辖的叶子节点失 ...
分类:
其他好文 时间:
2016-04-10 00:53:43
阅读次数:
171
题目大概说有n男n女,男的每回合要和不同女的跳舞,男女都有自己喜欢一起跳舞的对象,他们最多能容忍和k个不喜欢的人跳舞,问舞会最多能进行几个回合。 二分枚举回合用最大流判断:男和女各拆成两点i、i'和j、j',中间连容量k的边;源点向i连容量为回合数的边,j'向汇点连容量回合数的边;如果i和j是喜欢关 ...
分类:
其他好文 时间:
2016-04-04 10:17:27
阅读次数:
256
POJ3285 River Hopscotch 此题是大白P142页(即POJ2456)的一个变形题,典型的最大化最小值问题. C(x)表示要求的最小距离为X时,此时需要删除的石子.二分枚举X,直到找到最大的X,由于c(x)=m时满足题意,所以最后输出的是ub-1或者lb(lb==ub-1 注意相邻 ...
分类:
其他好文 时间:
2016-03-31 20:24:01
阅读次数:
139
题目求最长的重复k次可重叠子串。 与POJ1743同理。 二分枚举ans判定是否成立 height分组,如果大于等于ans的组里的个数大于等于k-1,这个ans就可行 1 #include<cstdio> 2 #include<cstring> 3 #include<algorithm> 4 usi
分类:
编程语言 时间:
2016-02-19 15:53:29
阅读次数:
193
题目大意:你的手机通讯录里有n个联系人,m个分组,其中,有的联系人在多个分组里。你的任务是在一些分组里删除一些联系人,使得每个联系人只在一个分组里并且使人数最多的那个分组人数最少。找出人数最多的那个分组中的人数。题目分析:要求的是最小的最大值,二分枚举这个最小的最大人数x。增加源点s和汇点t,从s向...
分类:
其他好文 时间:
2015-12-16 00:09:27
阅读次数:
227
Optimal MilkingTime Limit:2000MSMemory Limit:30000KB64bit IO Format:%I64d & %I64uSubmitStatusPracticePOJ 2112DescriptionFJ has moved his K (1 15, a r....
分类:
其他好文 时间:
2015-11-13 10:27:30
阅读次数:
329
题目大意:一个n个点,m条无向边的图,求出平均权值最小的回路。题目分析:二分枚举平均值mid,只需判断是否存在平均值小于mid的回路,即判断是否有sum(wi)# include# include# include# include# includeusing namespace std;const...
分类:
其他好文 时间:
2015-10-25 16:13:22
阅读次数:
186
给出Fibonacci的第i项和第j项。求第n项。InputThe input contains five integers in the following order:i,Fi,j,Fj,n.?1000 ≤i,j,n≤ 1000,i≠j,?2·109≤Fk≤ 2·109(k=min(i,j,n)...
分类:
其他好文 时间:
2015-10-15 14:23:36
阅读次数:
186
先Floyd求牛到机器最短距离,然后二分枚举最长的边。 1 #include 2 #include 3 #include 4 #include 5 using namespace std; 6 #define INF (1 que; 31 que.push(vt); 32 ...
分类:
其他好文 时间:
2015-10-03 19:23:21
阅读次数:
278
如果遇到这种解方程的题目,想把它每个未知数写出公式可不容易,而在不知道解的数据范围的时候,二分枚举什么的和没做没区别,所以这里引入了高斯消元对此进行解答。 高斯消元简直就是为计算机量身打造的解n元一次方程组的利器,虽然在算法竞赛中并不会考像加减消元这种容易的题目,但是这作为它的基础,还是需...
分类:
其他好文 时间:
2015-09-24 21:19:55
阅读次数:
158