Cod sursa(job #3168388)

Utilizator bagae123Burlacu Andrei bagae123 Data 12 noiembrie 2023 12:46:03
Problema Factoriale Scor 70
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.17 kb
#include <fstream>

using namespace std;
ifstream fin("factoriale.in");
ofstream fout("factoriale.out");
\
int v[101],nrmare[101];
void produs(int nrmare[],int n)
{
    int i,t=0;
    for(i=1; i<=nrmare[0]; i++)
    {
        t=t+nrmare[i]*n;
        nrmare[i]=t%10;
        t=t/10;
    }
    while(t!=0)
    {
        nrmare[++nrmare[0]]=t%10;
        t=t/10;
    }
}
int main()
{
    int n,k,d,x,p,s,i,r,j;

    fin>>n>>k;
    for(i=1; i<=n; i++)
    {
        fin>>r;
        for(j=2; j<=r; j++)
        {
            x=j;
            d=2;
            while(d*d<=x)
            {
                p=0;
                while(x%d==0)
                {
                    p++;
                    x=x/d;
                }
                if(p!=0)v[d]=v[d]+p;
                d++;
            }
            if(x>1)v[x]++;
        }
    }
    s=1;
    nrmare[0]=1;
    nrmare[1]=1;
    for(d=1; d<100; d++)
    {
        if(v[d]!=0&&v[d]%k!=0)
        {
            while(v[d]%k!=0)
            {
produs(nrmare,d);
v[d]++;
            }
        }
    }
    for(i=nrmare[0];i>=1;i--)
    {
        fout<<nrmare[i];
    }
    return 0;
}