百度之星初赛第二场1005
2015-06-01 21:58
351 查看
实质上是求最长LIS;
a[0]=<a[1]-1=《a[2]-2=<a[3]=3=<a[i]-i;;
a[0]=<a[1]-1=《a[2]-2=<a[3]=3=<a[i]-i;;
#include <iostream> #include<string.h> #include<stdio.h> #include<algorithm> using namespace std; int a[100050]; int dp[100050]; int len=0; int lis(int n) { int cnt=0; for(int i=0;i<n;i++) { int t=upper_bound(dp,dp+cnt,a[i])-dp; dp[t]=a[i]; if(t==cnt) cnt++; } return cnt; } int main() { int t; int cnt=1; scanf("%d",&t); while(t--) { int n; len=0; memset(dp,0,sizeof(dp)); scanf("%d",&n); for(int i=0;i<n;i++) { scanf("%d",&a[i]); a[i]-=i; } printf("Case #%d:\n",cnt++); printf("%d\n",n-lis(n)); } return 0; }
相关文章推荐
- POJ 3903 【最长递增子序列 NLOGN】
- Windows下Qt5环境搭建
- 配置httpd.conf支持PHP
- 传智播客:复制文本文件
- unity中关于游戏场景的优化——遮挡剔除
- 黑马程序员_Java环境变量配置及基础知识
- 大数据处理之一
- 匈牙利算法&KM算法
- 开放的智力9:警惕单因素模型
- Android工程目录结构详解
- Rspec 测试
- POJ 题目3928 Ping pong(树状数组)
- 海量用户同时登陆
- Google Code Jam Round2 A,B题解
- arguments | json | currentStyle
- 开放的智力8:实用「成功学」
- JavaScript HTML DOM 元素(节点)
- CURL发送HTTP请求
- SSH Secure Shell Client中文乱码的解决办法
- 关于加速程式执行效率的几条方法