Blocking Elements

这道题目打得我很郁闷。。为啥考试的时候明明想到算法了,只要在想深一点就可以解决问题了,但却没有这么做呢?

看到求最小最大,想到二分,然后没有什么好的判断方法,又想到了DP

f[i]表示前i个数,选择第i个数到第一种序列里面,满足题意的第一种序列的最小值,有很明显的转移

最后的求n+1的操作太妙了,记住

update 2024.7.8

重新做一遍,还是想到了二分和DP,却不知道怎么判断。。。

因为在DP的时候,太关注两个部分了(选出来的第一部分和第二部分都想要不超过s),这里就告诉我们,可以将其中一个部分当做限制条件

update 2024.8.28

重新做一遍,做出来了;但是设的是f[i]表示前i个数满足题目条件的第一个值的最小值,也就是第i个数可以选也可以不选;仍然可以做

像这种在满足一个条件的前提下去做题,可以记住(因为两个条件不好同时满足,所以在满足一个条件的前提下去最优化另一个条件)

posted @   最爱丁珰  阅读(2)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
点击右上角即可分享
微信分享提示