n,m,p,*a = map(int,open(0).read().split()) t = [1]*n m //= max(a) for i in range(n): while a[i]%p==0: a[i] //= p t[i] += 1 dp = [1]*1024 for i in range(999): if dp[i] > m: break for ai,ti in zip(a,t): dp[i+ti] = max(dp[i+ti],dp[i]*ai) else: i = -2 print(i+1)