Directorio
Título: secuencia ascendente
El problema se describe
en la secuencia a [1], a [2],…, a [n], si a [i] <a [i + 1] <a [i + 2] <… <a [j], entonces Llame a [i] a a [j] una secuencia creciente con una longitud de j-i + 1.
Dada una secuencia, ¿cuánto dura la secuencia creciente más larga de la secuencia?
Formato de entrada
La primera línea de entrada contiene un número entero n.
La segunda línea contiene n enteros a [1], a [2], ..., a [n], y los enteros adyacentes están separados por espacios para representar la secuencia dada.
Formato de
salida La línea de salida contiene un número entero que indica la respuesta.
Entrada de muestra
7
5 2 4 1 3 7 2
Salida de muestra
3
Puntos principales
Al problema se le da una secuencia de números. Puede tener una secuencia creciente en la primera parte, y luego cortar, y luego hay una secuencia creciente. Debe comparar la longitud de la secuencia en ambos extremos.
Código
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);
}
}