Cod sursa(job #334514)

Utilizator bugyBogdan Vlad bugy Data 27 iulie 2009 09:37:01
Problema GFact Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.74 kb
#include<stdio.h>   
 
using namespace std;   
  
long long x,n;
  
int put(long long x,long long n)   
{
	long long r;   
    if(n==0) 	return 1;   
        else if(n%2==0)   
            {
				r=put(x,n/2);   
                return (r*r);   
            }   
           else 
		   { 
			   r=put(x,n-1);   
                   return (r*x); 
			}   
}   
  
int main()   
{ 
	long long a, fact=1,ok=0,i;
    FILE *f=fopen("gfact.in","r"), *g=fopen("gfact.out","w");          
    fscanf(f, "%lld%lld", &x, &n);   
       
    a=(long long)put(x,n);   
i=1;	
	while(ok==0)
	{
	fact*=++i;
	if(fact%a==0)
		ok=1;	
	}
	fprintf(g,"%lld\n",i);
		
       
	
	
    fclose(f);   
    fclose(g);   
    return 0;      
}