贪心
文章平均质量分 78
DreamDraw_Pan
这个作者很懒,什么都没留下…
展开
-
Codevs 线段覆盖1&2&3&4&5
对于线段覆盖1、3,贪心,每次选取末端点靠前的,O(n)扫一遍即可(话说这个题似乎排序最占时间)。(当然DP也可以)#include #include #define maxn 1000000+5 using namespace std; struct line{ int b,e; friend bool operator < (line x,line y){ if(x.e!=y.e)re原创 2016-11-04 21:21:51 · 483 阅读 · 0 评论 -
Codevs 抄书问题1&2&3
对于抄书问题1,由于标签上写的DP,我就写了DP。。。。 设dp[I][j]表示前i本书由j个人抄的最小答案,则状态转移方程为 dp[I][j]=min{max(dp[k][j-1],s[I]-s[k])},其中s[]为前缀和,k从j-1到1枚举。 输出方案时,由于题目要求多解时使前面的人抄的尽量少,因此可以贪心地输出。 由于我们在前面的DP过程后已经知道了每个人抄书的页数的最大值的最小值原创 2016-11-04 21:56:30 · 805 阅读 · 0 评论