刚开始二分写错了 wa了很久 这个二分 的好好想想


#include <iostream>
#include<cstdio>
#include<string.h>
#include<cmath>
using namespace std;
const double eps=1e-10;
double dp[2005],L[2005],R[2005];
int n;
int BIN(int len,double x)
{
int left=0,right=len-1,mid;
while(left<right)
{
mid=(left+right)/2;
if(x>L[mid])left=mid+1;
else right=mid;
}
return left;
}
int work(int li,int ri)
{
int i,gh=0,pos;
L[0]=dp[0];
int len=1,sum=0,KH=0;
for(i=n-1;i>=ri;i--)
R[KH++]=dp[i];
for(i=1;i<li+1;i++)
{
if(dp[i]>L[len-1])
{
L[len++]=dp[i];
}
else
{
pos=BIN(len,dp[i]);
L[pos] =dp[i];
}
}
sum=li+1-len;
gh=0;
len=1;
L[0]=R[0];
for( i=1;i<KH;i++)
{
if(R[i]>L[len-1] )
{
L[len++]=R[i];
}
else
{
pos=BIN(len,R[i]);
L[pos] =R[i];
}
}
sum+=KH-len;
return sum;
}
int main()
{
int maxn,kk,i;
while(scanf("%d",&n)==1)
{
maxn=1000000;
for(i=0;i<n;i++)
scanf("%lf",&dp[i]);
for( i=0;i<n-1;i++)
if((kk=work(i,i+1))<maxn)maxn=kk;
printf("%d\n",maxn);
}
return 0;
}

最新文章

  1. vtkMapper
  2. LinuxMM--Memory Pressure
  3. C/S B/S 及WEB工作原理
  4. [转]matlab如何复制spectrum scope的图
  5. IDEA社区版运行并发布web项目
  6. js_面向对象编程
  7. 网站优化指南之数据库缓存、CDN与云存储
  8. httpd-vhosts.conf的配置
  9. JS - 图片放大器
  10. Oracle12c中性能优化&amp;amp;功能增强新特性之临时undo
  11. Vue.js 2.x笔记:组件(5)
  12. 输入系统:进程间双向通信(socketpair+binder)
  13. 踩坑之VC报错 error RC2104 : undefined keyword or key name
  14. python正则下载图片
  15. 使用gitbook plugin
  16. Node.js实战(四)之调试Node.js
  17. STL 2&mdash;迭代器相关运算&mdash;&mdash;advance(),distance(),next(),prev()
  18. LOJ.2721.[NOI2018]屠龙勇士(扩展CRT 扩展欧几里得)
  19. python基础学习1-类相关内置函数
  20. (博弈 sg入门2)

热门文章

  1. linux系统下邮件的发送
  2. Android ScrollView嵌套ScrollView滚动的问题解决办法
  3. Logstash自带正则表达式
  4. yii---where or该如何使用
  5. Anaconda中配置Pyspark的Spark开发环境
  6. Solr学习笔记之5、Component(组件)与Handler(处理器)学习
  7. Oracle 分析函数的使用(主要是rollup用法)
  8. redis 事务 even when a command fails, all the other commands in the queue are processed
  9. Windows Preinstallation Environment
  10. B. Berland National Library---cf567B(set|模拟)