Pagini recente » Cod sursa (job #209499) | Monitorul de evaluare | Istoria paginii runda/o_gandim_intens/clasament | Statistici Alina Oprea (kokoko) | Cod sursa (job #1678056)
#include <cstdio>
#define nmax 1005
using namespace std;
int c[nmax],p[nmax],nrp;
int n,m,v[nmax];
int a[nmax];
void solve(int k)
{
int j=2;
while (k!=1) {
while (k%j==0) {
k/=j;
v[j]++;
}
j++;
}
}
int main()
{
freopen("factoriale.in","r",stdin);
freopen("factoriale.out","w",stdout);
int i,j,k;
for (i=2;i<=100;i++)
c[i]=1;
for (i=2;i<=100;i++)
if (c[i]==1)
for (j=i*i,p[++nrp]=i;j<=100;j++)
c[j]=0;
scanf("%d %d",&n,&m);
for (i=1;i<=n;i++) {
scanf("%d",&k);
while (k) {
solve(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--)
printf("%d",a[i]);
return 0;
}