题目链接:http://acm.hzau.edu.cn/problem.php?id=1205

【题意】给你一串数,要求你找到两个数a[i],a[j],使得a[i]<=a[j]且j>=i且j-i最大。

【分析】预处理1~i的最小值,然后从右往左双指针,维护右端点>左端点,如果右端点<1~L的最小值,则移动右端点。

#include <cstdio>
#include <vector>
#include <cstring>
#include <string>
#include <cstdlib>
#include <iostream>
#include <map>
#include <cmath>
#include <algorithm>
using namespace std;
typedef long long LL;
typedef pair<int,int>pii;
const int N = 1e5+;
const double eps = 1e-;
int T,n,w[N],sum[N<<],p[N<<],cnt,m,ret[N];
int k,a[N],mi[N];
int main() {
while(~scanf("%d",&n)){ int ans=;
mi[]=1e9+;
for(int i=;i<=n;i++){
scanf("%d",&a[i]);
mi[i]=1e9+;
}
for(int i=;i<=n;i++){
mi[i]=min(mi[i-],a[i]);
}
for(int l=n,r=n;l>=;l--){
if(mi[l]>a[r]){
while(a[r]<mi[l]){
r--;
}
ans=max(ans,r-l);
}
else {
ans=max(ans,r-l);
}
}
printf("%d\n",ans);
}
return ;
}

最新文章

  1. java_jdk_JDK版本切换批处理脚本
  2. Intellij IDEA 的使用(创建项目、导入项目、同时部署多个项目、JRebel)等常见eclipse、myeclipse换idea必看
  3. Fast Intro To Java Programming (2)
  4. jeecms附件标签用法
  5. Java笔记(五)&hellip;&hellip;运算符
  6. Linux 内核开发—内核简单介绍
  7. codevs 4163 hzwer与逆序对
  8. 浅谈C#中的泛型
  9. 常见类——Object
  10. Python爬虫(二十)_动态爬取影评信息
  11. ScheduledThreadPoolExecutor Usage
  12. 以resnet作为前置网络的ssd目标提取检测
  13. python基础——列表
  14. Android ScrollView嵌套Recyclerview滑动卡顿,松手即停问题解决;
  15. springboot 读取 yml 配置的几种方式
  16. Nmap 7.70新增功能——扫描主机所有IP
  17. 测试char,varchar存储
  18. QT基础:QT 定时器学习
  19. mysql视图 新手的问答
  20. Oracle EBS客户化程序中格式化金额

热门文章

  1. windows修改文件的修改或者创建时间
  2. 【uva11987】带删除的并查集
  3. Intersecting Lines (计算几何基础+判断两直线的位置关系)
  4. HDU 1180 诡异的楼梯 (广搜)
  5. Linux命令--hostname和uname
  6. aptitude约等于apt-get的工具
  7. 盲注脚本2.基于bool
  8. vuejs怎么在服务器部署?
  9. Python脚本 - 查询磁盘的读写次数信息
  10. 【Python问题解决】关于解决python3.x无法使用PIL库的解决方法