#include <bits/stdc++.h>
using namespace std;
#define int long long
signed main(){
ios::sync_with_stdio(false);
cin.tie(nullptr);cout.tie(nullptr);
int n;cin>>n;
int a,b;cin>>a>>b;
if(a==1){
cout<<0<<endl;
return 0;
}
vector<pair<int,int>> tip;
for(int i=2;i*i<=a;i++){
if(a%i==0){
int now=0;
while(a%i==0){
now++;
a/=i;
}
tip.push_back({i,now*b});
}
}
if(a>1){
tip.push_back({a,b});
}
int x,ans=1e18;
for(int i=1;i<=n;i++){
cin>>x;
int o=1,f=1;
for(auto [m,k]:tip){
int xx=x;
if(xx%m){f=0;break;}
int now=0;
while(xx%m==0){
xx/=m;
now++;
}
o=max(o,k/now+(k%now!=0));
}
if(f){
ans=min(ans,o);
}
}
if(ans>1e17){
cout<<-1<<endl;
}
else{
cout<<ans<<endl;
}
}