from itertools import combinations def main(): N, P, Q = map(int, input().split()) A = sorted(map(int, input().split())) A_10 = [pow(10, a_elm, P) for a_elm in A] A_9 = [pow(9, a_elm, P) for a_elm in A] A_7 = [pow(7, a_elm, P) for a_elm in A] A_5 = [pow(5, a_elm, P) for a_elm in A] # divisors = [10, 9, 7, 5] # A_mod = [[pow(div_, a_elm, P) for div_ in divisors] for a_elm in A] ctr = 0 for idx1, idx2, idx3, idx4 in combinations(range(N), r=4): if (A_10[idx1] + A_9[idx2] + A_7[idx3] + A_5[idx4]) % P == Q: ctr += 1 print(ctr) if __name__ == "__main__": main()