Cod sursa(job #308622)

Utilizator Andrei200Andrei200 Andrei200 Data 27 aprilie 2009 23:17:32
Problema GFact Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.8 kb
#include <stdio.h>

#define file_in "gfact.in"
#define file_out "gfact.out"

long long p,q;

inline long long power(long long a, long long b)   
{   
    long long x;   
    if (b==1)   
         return a;   
    else  
    if (b%2==0)   
    {   
        x=power(a,b/2);   
        return (x*x);   
    }   
    else  
    {   
       x=power(a,b/2);   
       return ((x*x)*a);   
    }   
}   


inline long long solveq()
{
   long long i,nr;
   nr=1;
   i=1;
   while(nr%p!=0)
   {
	   i++;
	   nr*=i;
	   //i++;
   }
   
   return i;
}

int main()
{
int i;	
	freopen(file_in,"r",stdin);
	freopen(file_out,"w",stdout);
	
	scanf("%lld %lld", &p,&q);
	
	//if (q==1)
	p=power(p,q);
		printf("%lld", solveq());
	//}
	
	fclose(stdin);
	fclose(stdout);
	
	return 0;
}