Cod sursa(job #59745)

Utilizator miruBoitos miru miru Data 10 mai 2007 11:50:27
Problema GFact Scor 25
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.63 kb
#include<fstream>
#include<math.h>

using namespace std;

int prim(int);

long long a,b,n=1;
float p,q;
int main()
{
    ifstream fin("gfact.in");
    ofstream fout("gfact.out");
int i,j;
fin>>p>>q;
a=(int)pow(p,q);
if(prim(a)) fout<<a;
else {
for(i=2;i<=a;i++)
{
    for(j = 1; j <= i;j++)
               n*=j;
    if(n%a == 0)
    {
    fout<<i;
    break;
    } 
    else
    n=1;
    
}
}

fin.close();
fout.close();

return 0;

}

int prim(int n)
{  if(n==1) return 0;
   if(n==2||n==3) return 1;
   if(n%2==0) return 0;
   for(int k=3;k*k<n;k+=2)
		if(n%k==0) return 0;
   return 1;
}