01分数规划
SC.ldxcaicai
我很菜=_=
展开
-
2018.09.11 poj2976Dropping tests(01分数规划)
传送门 01分数规划板子题啊。 就是简单变形移项就行了。 显然 ∑ni=1a[i]∑ni=1b[i]≤k∑i=1na[i]∑i=1nb[i]≤k\frac {\sum _{i=1} ^n a[i]} {\sum _{i=1} ^n b[i]} \le k 于是我们二分k。 只需检验: ∑ni=1(a[i]−b[i]∗k)≤0∑i=1n(a[i]−b[i]∗k)≤0\sum _{i=1...原创 2018-09-11 23:32:11 · 106 阅读 · 0 评论 -
bzoj1758: [Wc2010]重建计划(01分数规划+长链剖分+线段树)
传送门 长链剖分好题。 题意简述:给一棵树,问边数在[L,R][L,R][L,R]之间的路径权值和与边数之比的最大值。 思路: 用脚指头想都知道要01分数规划。 考虑怎么checkcheckcheck。 发现就是求在转化成真·边权之后有没有长度在[L,R][L,R][L,R]之间的路径权值是大于0的。 然后可以设计状态fi,jf_{i,j}fi,j表示iii开头长度为jjj的路径最大值,这个可...原创 2019-01-21 13:03:51 · 361 阅读 · 0 评论 -
2018.11.06 NOIP训练 最大获利(profit)(01分数规划+最大权闭合子图)
传送门 好题啊。 ∑i&lt;jpi,jK∗(200−K)&gt;X\frac{\sum_{i&lt;j}p_{i,j}}{K*(200-K)}&gt;XK∗(200−K)∑i<jpi,j>X =>∑i&lt;jpi,j−XK(200−K)&gt;0\sum_{i&lt;j}p_{i,j}-XK(200-K)&...原创 2018-11-06 12:02:29 · 228 阅读 · 0 评论 -
2018.10.19 NOIP训练 yk赚钱记(01分数规划)
传送门 其实是一个裸的最优比率生成树。 注意精度的控制就行了。 代码原创 2018-10-19 07:50:19 · 232 阅读 · 0 评论 -
2018.10.11 bzoj4819: [Sdoi2017]新生舞会(01分数规划+费用流)
传送门 01分数规划水题。 没想到SDOI竟然考模板题233. 题目上连01分数规划的式子都列好了简直是赤裸裸的挑衅啊。 移项之后直接上01分数规划+费用流检验就行了。 代码: #include<bits/stdc++.h> #define N 305 #define M 100005 using namespace std; inline int read(){ int ans=...原创 2018-10-11 20:24:47 · 161 阅读 · 0 评论 -
2018.09.24 bzoj1486: [HNOI2009]最小圈(01分数规划+spfa判负环)
传送门 答案只保留了6位小数WA了两次233。 这就是一个简单的01分数规划。 直接二分答案,根据图中有没有负环存在进行调整。 注意二分边界。 另外dfs版spfa判负环真心快很多。 代码: #include<bits/stdc++.h> #define N 3005 #define M 10005 using namespace std; inline int read(){ in...原创 2018-09-24 23:59:20 · 131 阅读 · 0 评论 -
2018.09.13 poj2728Desert King(最优比率生成树)
传送门 01分数规划经典题。 不过用krsukal会T掉。 这题用prim反而更快(毕竟是完全图) 因此直接二分+最小生成树搞定。 代码: #include<iostream> #include<cctype> #include<cmath> #include<algorithm> #include<cstring> #i...原创 2018-09-13 20:08:36 · 160 阅读 · 0 评论 -
2018.09.12 earthquake(最优比率生成树)
描述 地震已经破坏了农夫约翰所有的农场以及所有连接农场的道路。作为一个意志坚强的人,他决定重建所有的农场。在重建全部N(1 &lt;= N &lt;= 400)个农场之前,首先必须把所有农场用道路连接起来,即任意两个农场之间必须有至少一条通路。 在研究了地图之后,农夫约翰已经得出了结论:M(1 &lt;= M &lt;= 10,000)条双向的道路可以在较短的时间内建造好。由于约翰的资金有限,...原创 2018-09-12 20:58:49 · 315 阅读 · 0 评论 -
2018.09.12 poj3621Sightseeing Cows(01分数规划+spfa判环)
传送门 01分数规划板题啊。 发现就是一个最优比率环。 这个直接二分+spfa判负环就行了。 代码: #include<iostream> #include<cstdio> #include<cstring> #include<algorithm> #include<cmath> #define N 1005 #define...原创 2018-09-12 20:15:37 · 157 阅读 · 0 评论 -
2018.09.09 poj2949Word Rings(01分数规划+spfa判环)
传送门 这题要先巧妙的转化一下。 对于每个字符串,我们把头尾的两个小字符串对应的点连边,边权是这个字符串的长度。 这样最多会出现26*26个点。 这个时候就只用求出边权和跟边数的最大比值了。 这个显然01分数规划+spfa判环解决。 注意用dfs版的spfa要快一些。 代码: #include<iostream> #include<cstdio> #in...原创 2018-09-09 14:10:35 · 209 阅读 · 0 评论 -
bzoj3597: [Scoi2014]方伯伯运椰子(01分数规划)
传送门 题意咕咕咕有点麻烦不想写 思路: 考虑加了多少一定要压缩多少,这样可以改造边。 于是可以通过分数规划+spfaspfaspfa解决。 代码: #include<bits/stdc++.h> #define ri register int #define fi first #define se second using namespace std; const int rlen...原创 2019-03-28 21:39:27 · 114 阅读 · 0 评论