수행평가 2

1부터 M까지 수로 A의 부분수열이 되지 않는 가장 짧은 수열의 길이와 그 경우의 수를 10^9+7로 나눈 나머지를 구합니다.

보통7동적 계획법그리디조합론아직 제출이 없습니다시간 제한1초메모리 제한256 MB

문제

어떤 학생이 알고리즘 수행평가 과제로 길이가 NN인 수열 AA를 제출했다. AA의 모든 원소는 MM 이하의 자연수다.

이어서 다른 학생이 모든 원소가 MM 이하의 자연수인 수열 BB를 제출하려고 한다. 선생님은 BBAA부분 수열이면 표절로 판정한다. 부분 수열은 AA에서 원소를 0개 이상 지우고 남은 원소를 순서 그대로 이어 붙인 수열이다.

수열은 짧을수록 만들기 쉬우므로 길이를 최소로 하려고 한다. 표절로 판정되지 않는 BB의 최소 길이와, 그 길이를 가지면서 표절로 판정되지 않는 BB의 개수를 109+710^9 + 7로 나눈 나머지를 구하라.

입력

첫째 줄에 NNMM이 주어진다. (1N,M1000001 \le N, M \le 100000)

둘째 줄에 수열 AA의 원소 A1,A2,,ANA_1, A_2, \dots, A_N이 공백으로 구분되어 주어진다. (1AiM1 \le A_i \le M)

출력

첫째 줄에 표절로 판정되지 않는 수열의 최소 길이와, 그 길이를 가지는 수열의 개수를 109+710^9 + 7로 나눈 나머지를 공백으로 구분해 출력한다.