A - DZY Loves Sequences
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相关推荐
- Codeforces 447C - DZY Loves Sequences
447C - DZY Loves Sequences 思路:dp 代码: #include<bits/stdc++.h> using namespace std; #define ll l ...
- Codeforces - DZY Loves Sequences
题目链接:Codeforces - DZY Loves Sequences 做一个前后缀连续 LIS ,然后枚举每个位置即可. 注意细节. AC代码: #pragma GCC optimize(&qu ...
- CodeForces 447C DZY Loves Sequences DP
题目:click here 题意:求给定序列更改其中一个元素后的最长连续上升子序列的长度 分析:最长的连续子序列有2种,一种是严格上升(没有更改元素)的长度加1,一种是两段严格上升的加起来. 1 #i ...
- Codeforces Round #FF (Div. 1) A. DZY Loves Sequences
原题链接:http://codeforces.com/problemset/problem/446/A 题意:给一个长度为n的序列,最多可以修改一个位置的数,求最长连续上升子序列. 题解:当a[i+1 ...
- DZY Loves Sequences (dp)
题目链接 题意: 给你一个数组,只能改变数组中一个数,找到最长严格递增子列,输出其区间长度. 思路: 1.dp,对于第i个数,用dp[i][0]保存左边严格递增区间长度(包括i),用dp[i][1]保 ...
- Codeforces Round #FF 446 C. DZY Loves Fibonacci Numbers
參考:http://www.cnblogs.com/chanme/p/3843859.html 然后我看到在别人的AC的方法里还有这么一种神方法,他预先设定了一个阈值K,当当前的更新操作数j<K ...
- Codeforces 446C —— DZY Loves Fibonacci Numbers(线段树)
题目:DZY Loves Fibonacci Numbers 题意比較简单,不解释了. 尽管官方的题解也是用线段树,但还利用了二次剩余. 可是我没有想到二次剩余,然后写了个感觉非常复杂度的线段树,还是 ...
- CF A. DZY Loves Hash
A. DZY Loves Hash time limit per test 1 second memory limit per test 256 megabytes input standard in ...
- 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) ...
最新文章
- ping 攻击 Linux,Linux 环境实现ping攻击
- SPOJ 287 Smart Network Administrator
- delete 字符数组 []_前端基础扫盲系列 长达8000字的数组总结
- 战争游戏[tarjan]
- weblogic10异常:org.hibernate.hql.ast.HqlToken
- 连不上网_手机连不上网?四种方法教你如何解决,建议收藏以备不时之需
- 一切为了开放科学!Papers with Code新增CS、物理、数学、统计学等多个学科
- CentOS/Redhat:手动配置IP地址(命令和图形界面)
- 动态与代理AOP--01【代理的作用与概念】【动态代理与AOP】
- c语言二分法查找一个数_算法竞赛小专题系列(1):二分法、三分法
- vue微信支付回到原界面不执行mounted里的内容
- Leetcode 110.平衡二叉树
- React - 修改children(下)
- idea新建sourceFolder
- Python迭代器基本方法iter()及其魔法方法__iter__()原理详解
- 微信小程序傻瓜制作_怎么能免费制作自己的微信小程序?
- android studio中崩溃无法查看log?
- 文本相似性处理(好比论文查重)
- 德律aoi程式制作_AOI入门介绍
- 程序员进阶的五个瞬间,开头就笑了!