N,P,Q = map(int,input().split()) A = [0]+sorted(list(map(int,input().split()))) F1 = [[0 for _ in range(P)] for _ in range(N+1)] F1[1][pow(10,A[1],P)] = 1 # 初期化 for i in range(2,N+1): for j in range(P): F1[i][j] = F1[i-1][j] if j==pow(10,A[i],P): F1[i][j] += 1 F2 = [[0 for _ in range(P)] for _ in range(N+1)] F2[2][(pow(10,A[1],P)+pow(9,A[2],P))%P] = 1 # 初期化 for i in range(3,N+1): for j in range(P): F2[i][j] = F2[i-1][j]+F1[i-1][(j-pow(9,A[i],P))%P] F3 = [[0 for _ in range(P)] for _ in range(N+1)] F3[3][(pow(10,A[1],P)+pow(9,A[2],P)+pow(7,A[3],P))%P] = 1 # 初期化 for i in range(4,N+1): for j in range(P): F3[i][j] = F3[i-1][j]+F2[i-1][(j-pow(7,A[i],P))%P] F4 = [[0 for _ in range(P)] for _ in range(N+1)] F4[4][(pow(10,A[1],P)+pow(9,A[2],P)+pow(7,A[3],P)+pow(5,A[4],P))%P] = 1 # 初期化 for i in range(5,N+1): for j in range(P): F4[i][j] = F4[i-1][j]+F3[i-1][(j-pow(5,A[i],P))%P] print(F4[N][Q])