题目描述
在数列 a1,a2,⋯,an 中,如果 ai<ai+1<ai+2<⋯<aj,则称 a_iai 至 a_jaj 为一段递增序列,长度为j−i+1。
定一个数列,请问数列中最长的递增序列有多长。
输入描述
输入的第一行包含一个整数 n。
第二行包含 n 个整数 a1,a2,⋯,an,相邻的整数间用空格分隔,表示给定的数列。
其中, 数列中的数 2≤n≤1000,0≤数列中的数≤10^4。
输出描述:
输出一行包含一个整数,表示答案。
输入输出样例
示例
输入
7
5 2 4 1 3 7 2
输出
3
运行限制
- 最大运行时间:1s
- 最大运行内存: 256M
#include <iostream>
using namespace std;
int main()
{
int n , ans = 0 , num[1010] = {0};
cin >> n;
for(int i = 0 ; i < n ; i ++)
cin >> num[i];
for(int i = 0 , j = 1 ; i < n , j < n; ){
if(num[j - 1] < num[j]){
ans = max(j - i + 1 , ans);
j ++;
}
else if(num [j - 1] >= num[j]){
i = j;
j ++;
}
}
cout << ans << endl;
return 0;
}