问题
解答:
#include <iostream>
#include <cstdio>
#include <fstream>
#include <algorithm>
#include <cmath>
#include <math.h>
#include <vector>
#include <queue>
#include <string>
#include <cstring>
#include <map>
#include <stack>
#include <set>
using namespace std;
int main() {
int n,count = 1, max = 0;
int flag = 0;
scanf("%d",&n);
int Num[n];
int temp;
for(int i = 0; i < n; i++){
scanf("%d",&Num[i]);
}
for(int i = 0; i < n; i++){
temp = Num[i];
for(int j = i + 1; j < n; j++){
if(temp < Num[j]){
temp = Num[j];
count++;
}else if(flag == 0){
if(j == n-1){
count++;
flag = 0;
break;
}else if(Num[j] - Num[j-2] >1){
flag = 1;
temp = Num[j] - 1;
count++;
}
}else{
flag = 0;
break;
}
}
if(max < count)
max = count;
count = 1;
}
printf("%d",max);
return 0;
}