Cod sursa(job #2201639)

Utilizator Silviu10Marii Silviu Silviu10 Data 5 mai 2018 13:20:07
Problema Perle Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.86 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream in("exp.in");
ofstream out("exp.out");
const int MAX=30003;
int n,m,p[MAX],f[MAX],np;
int main()
{
    for(int i=2; i*i<MAX; ++i)
        if(p[i]==0)
            for(int j=i*i; j<MAX; j=j+i)
                p[j]=1;
    for(int i=2; i<MAX; ++i)
        if(p[i]==0)
            p[++np]=i;
    in>>m>>n;
    for(int i=1; i<=n; ++i)
    {
        int x;
        in>>x;
        for(int j=1; j<=np; ++j)
            while(x%p[j]==0)
            {
                ++f[j];
                x=x/p[j];
            }
    }
    int ok=1;
    for(int i=1; i<=np; ++i)
        if(f[i]%m!=0)
            ok=0;
        else f[i]=f[i]/m;
    out<<ok<<'\n';
    if(ok==1)
        for(int i=1; i<=np; ++i)
            if(f[i]!=0)
                out<<p[i]<<" "<<f[i]<<'\n';
    return 0;
}