bzoj4868 期末考试 题解
https://www.lydsy.com/JudgeOnline/problem.php?id=4868
显然我们只关注最后出分的学科。
刚开始想的是dp,然而不知道如何记录状态。
突然就想到了正解。
首先对于每一个最后出分的日期,所有的不愉快度一定来自两个方面:
n个同学的期待,这个作前缀和可以O(1)统计。
m个学科调派老师,这个作前缀和也可以O(1)统计。
所以O(max(ti))解决了这道题。???
正解当然不是上面的暴力而是三分。
设f(x)表示最终结束时间为x时,来自同学期待的不愉快度。
g(x)表示最终结束时间为x时,来自调整老师的不愉快度。
F(x)=f(x)+g(x)表示答案,F(x)是单峰的。
证明:
显然f(x),g(x)两个函数都是单调的。
但是仅仅单调还不够,两个函数一定是斜率不下降的。
也就是说,我们对两个函数求导函数,仍然是单调的。
并且,两个导函数都是单调不下降的。
其中f′(x)的初始值为正,g′(x)的初始值为负。
故F′(x)=f′(x)+g′(x)是单调不下降,且过原点的。
所以F(x)是单峰的。
然而三分似乎是不对的。
F(x)并不严格单调。
当三分的左右mid端点在一段函数值相等的区间,可能会导致区间确定的错误。
所以可能正解反而是暴力?
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步