Codeforces Round #FF (Div. 2) C
来源:互联网 发布:朱棣是朱元璋亲生 知乎 编辑:程序博客网 时间:2024/06/02 12:52
题意:选定一段数,然后可以更改其中的一个 求最长可以得到的严格上升的序列的最长长度
解法:预处理出每个数之前的比他小的数 和 之后比他大的数
然后进行枚举每个点 看是否能组合得到更大的序列长度即可
注意这一题的描述存在bug 数字不一定是要他所规定的范围之内的 出现0、-1 、10^9+n应该也是可以的
所以不用加入太多特判
#include<set>#include<cstdio>#include<iostream>using namespace std;#define maxn 111111int x[maxn],pr[maxn],be[maxn];int main(){ int n;scanf("%d",&n); for(int i=0;i<n;++i) scanf("%d",&x[i]); if(n==1){ printf("1\n"); return 0; } int pre=0,ans=0; pr[1]=1; for(int i=2;i<n;++i){ if(x[i-1]>x[i-2])pr[i]=pr[i-1]+1; else pr[i]=1; } be[n-2]=1; for(int i=n-3;i>=0;i--){ if(x[i+2]>x[i+1])be[i]=be[i+1]+1; else be[i]=1; } ans=max(be[0],ans); ans=max(pr[n-1],ans); ans=max(be[0]+1,ans); ans=max(pr[n-1]+1,ans); for(int i=1;i<n-1;++i){ ans=max(pr[i]+1,ans); ans=max(be[i]+1,ans); if(x[i+1]-x[i-1]>=2){ ans=max(pr[i]+be[i]+1,ans); } } printf("%d\n",ans); return 0;}
0 0
- Codeforces Round #FF (Div.2 )(C,D)
- Codeforces Round #FF (Div. 2) C
- Codeforces Round #FF (Div. 2)
- Codeforces Round #FF (Div. 2)
- Codeforces Round #FF (Div. 2)
- Codeforces Round #FF (Div. 2):C. DZY Loves Sequences
- Codeforces Round #FF (Div. 2) Problem C DZY Loves Sequences
- Codeforces Round #FF (Div. 2)C - DZY Loves Sequences
- Codeforces Round #FF (Div. 2)-C. DZY Loves Sequences
- Codeforces Round #FF (Div. 2/C)/Codeforces446A_DZY Loves Sequences(DP)
- Codeforces Round #FF (Div. 2)C. DZY Loves Sequences
- Codeforces Round #FF (Div. 2) C. DZY Loves Sequences
- Codeforces Round #FF (Div. 2)C.DYZ Loves Sequence
- Codeforces Round #FF (Div. 2) C. DZY Loves Sequences
- Codeforces Round #FF (Div. 2) C DZY Loves Sequences
- Codeforces Round #FF (Div. 2)C. DZY Loves Sequences
- Codeforces Round #FF (Div. 2)C. DZY Loves Sequences
- Codeforces Round #FF (Div. 2)-C. DZY Loves Sequences
- 单链表的逆置-C++实现(转载)
- 【阅读】《网页设计创意书》第五章——风格和主题
- Java (JDK7)中的String常量和String.intern的实现
- 文件头分析
- 如何下载googlecode源码webrtc、 如何下载更新Android SDK
- Codeforces Round #FF (Div. 2) C
- android 内存泄漏分析过程详解
- POJ_3335_Rotating Scoreboard(半平面交的核)
- G.MaxArea(SCUT 2014 春季选拔第一场 补充)
- 栈的应用举例2(迷宫求解)
- 【排列组合】有序进行全排列的几种方法
- Web编程中,常见的乱码解决方案
- linux网站
- POJ 2386 Lake Counting 搜索题解