ELIS - Easy Longest Increasing Subsequence

Given a list of numbers A output the length of the longest increasing subsequence. An increasing subsequence is defined as a set {i0 , i1 , i2 , i3 , ... , ik} such that 0 <= i0 < i1 < i2 < i3 < ... < ik < N and A[ i0 ] < A[ i1 ] < A[ i2 ] < ... < A[ ik ]. A longest increasing subsequence is a subsequence with the maximum k (length).

i.e. in the list {33 , 11 , 22 , 44}

the subsequence {33 , 44} and {11} are increasing subsequences while {11 , 22 , 44} is the longest increasing subsequence.

Input

First line contain one number N (1 <= N <= 10) the length of the list A.

Second line contains N numbers (1 <= each number <= 20), the numbers in the list A separated by spaces.

 

Output

One line containing the lenght of the longest increasing subsequence in A.

 

Example

Input:
5
1 4 2 4 3
Output:
3

Added by:Omar ElAzazy
Date:2012-03-17
Time limit:1.948s
Source limit:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Languages:All except: ASM64

hide comments
2023-05-05 20:34:47
Easy with algorithm O(n!)
2023-05-05 20:34:35
Easy with O(n!)
2022-08-16 14:11:58
DP or BitMasks
2022-01-19 07:33:26
Navice solution also got accepted.
2020-08-28 22:54:05
AC in 1 go :)... Warning : Don't try this at home, school or anywhere!!
2020-08-06 18:08:53
very poor test cases no need of memorisation or top down just simple recursion .
2020-05-12 17:28:50
u really dont need to know any iterative algo.... just use a recurrsion tree with an extra element (here 0) at the root and use memoization and the code works!
2020-04-30 15:58:24
n^2 solution dp
2019-08-26 19:19:05
DP or Greedy
2019-06-25 22:38:25
ac using JaliKati Theorem !!!!!
© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.