Cod sursa(job #1710295)

Utilizator GoogalAbabei Daniel Googal Data 28 mai 2016 19:15:57
Problema Factoriale Scor 80
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.95 kb
#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;
}