Вежі


Submit solution

Points: 100
Time limit: 1.0s
Memory limit: 256M

Author:
Problem type
Allowed languages
C++

Дано \(n\) кубиків. Кожен кубик має розмір \(k_i\). Кубики обробляються зліва направо. Кубик можна покласти на вершину деякої вежі лише тоді, коли верхній кубик цієї вежі строго більший за поточний. Якщо відповідної вежі немає, створюється нова. Визначте мінімальну кількість веж після обробки всіх кубиків.

Input Specification

Перший рядок задано ціле число \(n\) Другий рядок містить \(n\) цілих чисел \(k_1, k_2, \ldots, k_n\), де \(k_i\) --- розмір певного кубика. \(\\1 \leq n \leq 2 \cdot 10^5\\\) \(1 \leq k_i \leq 10^9\\\)

Output Specification

Виведіть кількість побудованих веж.

Sample Input 1

5
3 8 2 1 5

Sample Output 1

2

Sample Input 2

8
4 5 6 9 3 10 2 1

Sample Output 2

5

Comments

There are no comments at the moment.