传送门

题意咕咕咕


思路:直接上二维bitbitbit优化dpdpdp即可。

代码:

#include<bits/stdc++.h>
#define N 10005
#define K 5005
using namespace std;
int n,k,a[N],bit[6005][605],len=0,ans=0;
inline long long read(){
    long long ans=0;
    char ch=getchar();
    while(!isdigit(ch))ch=getchar();
    while(isdigit(ch)){
        ans=(ans<<3)+(ans<<1)+ch-'0';
        ch=getchar();
    }
    return ans;
}
inline int lowbit(int x){return x&-x;}
inline void update(int nx,int mx,int v){
    for(int i=nx;i<=len+k;i+=lowbit(i))
        for(int j=mx;j<=k+1;j+=lowbit(j))
            bit[i][j]=max(bit[i][j],v);
}
inline int query(int nx,int mx){
    int ret=0;
    for(int i=nx;i;i-=lowbit(i))
        for(int j=mx;j;j-=lowbit(j))
            ret=max(ret,bit[i][j]);
    return ret;
}
int main(){
    n=read();
    k=read();
    for(int i=1;i<=n;++i){
        a[i]=read();
        len=max(a[i],len);
    }
    for(int i=1;i<=n;++i){
        for(int j=k;j>=0;--j){
            int pos=query(a[i]+j,j+1)+1;
            ans=max(ans,pos);
            update(a[i]+j,j+1,pos);
        }
    }
    printf("%d",ans);
    return 0;
}


最新文章

  1. iOS通知中心升级 -可设置按优先级执行block
  2. nginx 负载均衡策略
  3. iOS数组排序
  4. HDU2697+DP
  5. Servlet中的请求包含
  6. IOS深入学习(12)之Archiving
  7. Excel——使用VLOOKUP函数关联跨工作薄数据
  8. c#提出中文首字母
  9. CSS实现页面背景自动切换功能
  10. HDU 1069 Monkey and Banana(DP 长方体堆放问题)
  11. MyBatis Generator配置示例
  12. c#调用com组件,程序 发生意外&lt;hr=0x80020009&gt;
  13. hmtl div水平、垂直居中
  14. solr(三) : 导入数据库表数据
  15. 二叉搜索树(hdu3791)
  16. C#实现windows服务安装,服务名可配置时出问题(无法创建&#160;ProjectInstaller&#160;安装程序类型的实例)
  17. springmvc 测试项目示例
  18. 初级版python登录验证,上传下载文件加MD5文件校验
  19. Spring MVC Hello World 404
  20. 程序员 &amp; 设计师都能用上的 75 份速查手册

热门文章

  1. Dostoevsky: Better Space-Time Trade-Offs for LSM-Tree Based Key-Value Stores via Adaptive Removal of Superfluous Merging 阅读笔记
  2. 网络yum源制作
  3. vim简单命令
  4. js判断一个变量是数组还是对象
  5. JSP(介绍,语法,指令)
  6. 138 条 Vim 命令、操作、快捷键全集
  7. 【c # 数据库】存储过程
  8. 【c# 数据库】对数据库进行增删查改
  9. ViewPager中Fragment的重复创建、复用问题
  10. WebSocket 实现链接 群聊(low low low 版本)