Pagini recente » Cod sursa (job #3273319) | Cod sursa (job #34290) | Cod sursa (job #2359003) | Cod sursa (job #2694301) | Cod sursa (job #2730492)
#include <fstream>
using namespace std;
ifstream fin("factoriale.in");
ofstream fout("factoriale.out");
int n,k,i,j,m,prod,t,v[101],p[101],e[101],x[100001];
bool f[101];
int main() {
fin>>n>>k;
for (i=1;i<=n;i++)
fin>>v[i];
for (i=2;i<=100;i++)
if (f[i]==0) {
p[++m]=i;
for (j=2*i;j<=100;j+=i)
f[j]=1;
}
for (i=1;i<=n;i++)
for (j=1;j<=m;j++) {
prod=p[j];
while (prod<=v[i]) {
e[j]+=v[i]/prod;
prod*=p[j];
}
}
x[0]=x[1]=1;
for (i=1;i<=m;i++) {
if (e[i]==0)
break;
while (e[i]%k!=0) {
t=0;
for (j=1;j<=x[0];j++) {
x[j]=x[j]*p[i]+t;
t=x[j]/10;
x[j]%=10;
}
while (t!=0) {
x[++x[0]]=t%10;
t/=10;
}
e[i]++;
}
}
for (i=x[0];i>=1;i--)
fout<<x[i];
return 0;
}