Cod sursa(job #1976568)

Utilizator stefdascalescuStefan Dascalescu stefdascalescu Data 3 mai 2017 18:42:34
Problema Factoriale Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.71 kb
# include <bits/stdc++.h>
using namespace std;
ifstream fi("factoriale.in");
ofstream fo("factoriale.out");
const int baza = 10;
int v[105];
char nr[1000005];
void mul(int x,int &n)
{
    int t=0,i;
    for (i=1;i<=n || t;++i) t+=nr[i]*x,nr[i]=t % baza,t/=baza;
    n=i-1;
}
int main(void)
{
    int n,k,y;
    fi>>n>>k;
    while (n --)
    {
        fi>>y;
        for (int j=2;j<=y;++j)
          for (int i=2,x=j;i <= x && x != 1;++i)
            while (!(x % i))
            {
                ++v[i];
                x/=i;
            }
    }
    nr[1]=n=1;
    for (int i=2;i<101;++i) for (int j=(k-(v[i] % k))%k;j;--j) mul(i,n);
    for (int i=n;i;--i) fo << int(nr[i]);
    return 0;
}