DZY Loves Sequences
b[i] 为 i 开始上升序列的右边界。

//#pragma GCC optimize(2)
//#pragma GCC optimize(3,"Ofast","inline")
#include<bits/stdc++.h>
#define int long long
#define fi first
#define se second
#define pb push_back
#define pii pair<int,int>
#define IOS ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);
using namespace std;
const int inf=2e18+100;
const int maxn=2e5+100;
int a[maxn],b[maxn];
signed main()
{IOSint n;cin>>n;for(int i=1;i<=n;i++){cin>>a[i]; }if(n==1){cout<<"1\n";return 0;}if(n==2){cout<<"2\n";return 0;}int l=1,r=1;while(r<=n){if(l>=r)r=l+1;while(r<=n&&a[r]>a[r-1]){r++;}b[l]=r-1;l++;//if(l>r)r=l+1;}for(int i=l;i<r;i++)b[i]=n;int ans=1;for(int i=1;i<=n;i++){int l1=i,r1=b[i];int l2=b[i]+1,r2=b[b[i]+1];ans=max(ans,r1-l1+1);if(l2>n)continue;ans=max(ans,r2-l2+1);if(r1-l1+1>1){if(a[l2]-1>a[r1-1])ans=max(ans,r2-l1+1);if(r2-l2+1>=1)ans=max(ans,r1-l1+2);}else if(r2-l2+1>=1){ans=max(ans,r2-l2+2);}if(r2-l2+1>1){if(a[l2+1]-1>a[r1])ans=max(ans,r2-l1+1);if(r1-l1+1>=1)ans=max(ans,r2-l2+2);}else if(r1-l1+1>=1){ans=max(ans,r1-l1+2);}}cout<<ans<<"\n";
}

A - DZY Loves Sequences相关推荐

  1. Codeforces 447C - DZY Loves Sequences

    447C - DZY Loves Sequences 思路:dp 代码: #include<bits/stdc++.h> using namespace std; #define ll l ...

  2. Codeforces - DZY Loves Sequences

    题目链接:Codeforces - DZY Loves Sequences 做一个前后缀连续 LIS ,然后枚举每个位置即可. 注意细节. AC代码: #pragma GCC optimize(&qu ...

  3. CodeForces 447C DZY Loves Sequences DP

    题目:click here 题意:求给定序列更改其中一个元素后的最长连续上升子序列的长度 分析:最长的连续子序列有2种,一种是严格上升(没有更改元素)的长度加1,一种是两段严格上升的加起来. 1 #i ...

  4. Codeforces Round #FF (Div. 1) A. DZY Loves Sequences

    原题链接:http://codeforces.com/problemset/problem/446/A 题意:给一个长度为n的序列,最多可以修改一个位置的数,求最长连续上升子序列. 题解:当a[i+1 ...

  5. DZY Loves Sequences (dp)

    题目链接 题意: 给你一个数组,只能改变数组中一个数,找到最长严格递增子列,输出其区间长度. 思路: 1.dp,对于第i个数,用dp[i][0]保存左边严格递增区间长度(包括i),用dp[i][1]保 ...

  6. Codeforces Round #FF 446 C. DZY Loves Fibonacci Numbers

    參考:http://www.cnblogs.com/chanme/p/3843859.html 然后我看到在别人的AC的方法里还有这么一种神方法,他预先设定了一个阈值K,当当前的更新操作数j<K ...

  7. Codeforces 446C —— DZY Loves Fibonacci Numbers(线段树)

    题目:DZY Loves Fibonacci Numbers 题意比較简单,不解释了. 尽管官方的题解也是用线段树,但还利用了二次剩余. 可是我没有想到二次剩余,然后写了个感觉非常复杂度的线段树,还是 ...

  8. CF A. DZY Loves Hash

    A. DZY Loves Hash time limit per test 1 second memory limit per test 256 megabytes input standard in ...

  9. BZOJ 3309 DZY Loves Math

    3309: DZY Loves Math Description 对于正整数n,定义f(n)为n所含质因子的最大幂指数.例如f(1960)=f(2^3 * 5^1 * 7^2)=3, f(10007) ...

最新文章

  1. ping 攻击 Linux,Linux 环境实现ping攻击
  2. SPOJ 287 Smart Network Administrator
  3. delete 字符数组 []_前端基础扫盲系列 长达8000字的数组总结
  4. 战争游戏[tarjan]
  5. weblogic10异常:org.hibernate.hql.ast.HqlToken
  6. 连不上网_手机连不上网?四种方法教你如何解决,建议收藏以备不时之需
  7. 一切为了开放科学!Papers with Code新增CS、物理、数学、统计学等多个学科
  8. CentOS/Redhat:手动配置IP地址(命令和图形界面)
  9. 动态与代理AOP--01【代理的作用与概念】【动态代理与AOP】
  10. c语言二分法查找一个数_算法竞赛小专题系列(1):二分法、三分法
  11. vue微信支付回到原界面不执行mounted里的内容
  12. Leetcode 110.平衡二叉树
  13. React - 修改children(下)
  14. idea新建sourceFolder
  15. Python迭代器基本方法iter()及其魔法方法__iter__()原理详解
  16. 微信小程序傻瓜制作_怎么能免费制作自己的微信小程序?
  17. android studio中崩溃无法查看log?
  18. 文本相似性处理(好比论文查重)
  19. 德律aoi程式制作_AOI入门介绍
  20. 程序员进阶的五个瞬间,开头就笑了!

热门文章

  1. 想要做大事,就要有高效的协作机制
  2. 详解Unity中的粒子系统Particle System (七)
  3. 金融投资理财基础知识
  4. Ubuntu上安装vmware
  5. 如何在微信自定义链接分享内容,图文链接xml卡片生成代码,制作微信卡片实现自定义标题,描述,缩列图以供转发
  6. WiFi开发视频教程分享 | 免费下载
  7. LaTex(PART IV) 各级标题
  8. postgresql仅修改时间戳的时分秒写法
  9. vm虚拟机安装以及镜像和网路配置
  10. 《Python代码审计》(1)一款超好用的代码扫描工具