第十一周学习总结

这周打了两场比赛,整体来讲感觉还不错,最起码第一题可以很快地ac,但依然没有突破第二道的瓶颈。接下来的比赛过程中,这将是我着重攻克的难关之一。还有就是要灵活运用之前所学的知识,昨天的比赛中第一题用的就是连续取余和整除,如何运用这类知识也是接下来的培养重点。
这一周没有什么题做,我在网上找到了一个二分法的经典例题。
某一个国家开发了一套导弹拦截系统,这个拦截系统可以拦截敌国打来的导弹。不同射程的导弹在弹射出去的时候的飞行高度都不同,这个拦截系统可以从低到高拦截飞来的导弹,但是它下一次拦截的高度必须大于等于上一次高度,只能升高不能降低。那么请问,假设我们检测到了所有敌国发射的导弹飞行的高度,请问我们最多可以拦截其中多少枚?
这是一道二分法优化动态规划的题目。看似讲了这么多,其实用一句话就概括了,就是求一个序列当中最长不下降子序列的长度。我们看看所有小于等于i的j,如果aj小于等于ai+1,那么说明ai+1可以跟在aj的后面,构成一个解。如果我们用dp数组来存储所有位置的答案,那么我们可以得到下面这个转移方程:ai=max(dp[j]+1).由此可得出答案。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值