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 idxs in combinations(range(N), r=4): if (A_10[idxs[0]] + A_9[idxs[1]] + A_7[idxs[2]] + A_5[idxs[3]]) % P == Q: ctr += 1 print(ctr) if __name__ == "__main__": main()