비교유전학을 연구하는 생물학자들이 여러 종에 걸쳐 보존된 유전자 서열을 찾고 있습니다.
집합 {1,2,…,n}의 각 수가 하나의 유전자를 나타낸다고 합시다. 각 종은 자신의 유전자 배열 순서를 나타내는 1,2,…,n의 순열 하나로 표현됩니다. 유전자 서열 x1,x2,…,xk가 주어진 종들의 집합에서 보존된 유전자 서열이라는 것은, 이 서열이 각 종의 유전자 배열 순서의 (반드시 연속일 필요는 없는) 부분 수열이라는 뜻입니다.
표준 입력으로 유전자 배열들의 정보를 읽어들여, 가장 긴 보존된 서열의 길이를 구한 뒤 표준 출력으로 출력하는 프로그램을 작성하세요.
첫째 줄에는 공백 하나로 구분된 두 정수 n과 m이 주어지며, 1≤n≤500, 1≤m≤20입니다. n은 유전자의 수이고 m은 종의 수입니다. 이어지는 m개의 줄에는 각 종의 게놈이 한 줄에 하나씩, 1,2,…,n의 순열을 공백으로 구분하여 주어집니다.
가장 긴 보존된 유전자 서열의 길이를 나타내는 정수 하나를 출력합니다.