您的位置:首页 > 其它

【(高职专科组)第十一届蓝桥杯省模拟赛答案】给定一个数列,请问数列中最长的递增序列有多长。

2020-05-10 04:15 645 查看

目录

题目:递增序列

问题描述
  在数列 a[1], a[2], …, a
中,如果 a[i] < a[i+1] < a[i+2] < … < a[j],则称 a[i] 至 a[j] 为一段递增序列,长度为 j-i+1。
  给定一个数列,请问数列中最长的递增序列有多长。

输入格式
  输入的第一行包含一个整数 n。
  第二行包含 n 个整数 a[1], a[2], …, a
,相邻的整数间用空格分隔,表示给定的数列。

输出格式
  输出一行包含一个整数,表示答案。

样例输入
7
5 2 4 1 3 7 2

样例输出
3

要点

题目给定一个数列,他可能前面一部分是递增序列,然后断掉了,然后后面又有一个递增序列,你得比较两端序列的长度

代码

import java.util.Scanner;

public class 递增序列 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int[] array = new int[n];
for (int i = 0; i < n; i++) {
array[i] = sc.nextInt();
}
sc.close();

int temp = array[0];
int count = 1;
int max = 0;
for (int i = 1; i < n; i++) {
if (temp < array[i]) {
temp = array[i];
count++;
} else { //重新开始一段递增序列
temp = array[i];
max = Math.max(count, max);
count = 1;
}
}
System.out.println(max);
}
}
爱做梦的鱼 原创文章 169获赞 1083访问量 7万+ 关注 私信
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐