Pagini recente » Cod sursa (job #184524) | Cod sursa (job #3207400) | Cod sursa (job #3039976) | Cod sursa (job #71151) | Cod sursa (job #1710295)
#include <fstream>
#define nmax 105
#define cmax 1005
using namespace std;
ifstream fin("factoriale.in");
ofstream fout("factoriale.out");
int n,m,v[nmax],s=1;
int a[cmax];
void rez(int k)
{
int j=2;
while (k!=1) {
while (k%j==0) {
k/=j;
v[j]++;
}
j++;
}
}
int main()
{
int i,j,k;
fin>>n>>m;
for (i=1;i<=n;i++) {
fin>>k;
while (k) {
rez(k);
k--;
}
}
a[0]=a[1]=1;
for (i=1;i<=100;i++)
while (v[i]%m) {
v[i]++;
for (j=1;j<=a[0];j++)
a[j]*=i;
a[0]+=2;
for (j=1;j<=a[0];j++)
if (a[j]>9) {
a[j+1]+=a[j]/10;
a[j]%=10;
}
while (a[a[0]]==0)
a[0]--;
}
for (i=a[0];i>=1;i--)
fout<<a[i];
return 0;
}