Cod sursa(job #525313)

Utilizator SadmannCornigeanu Calin Sadmann Data 24 ianuarie 2011 20:00:24
Problema Factorial Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.91 kb
#include<stdio.h>
FILE *in,*out;
int nr0,p;
int num,aux,aux2;
int main()
{
	in=fopen("fact.in","rt");
	out=fopen("fact.out","wt");
	fscanf(in,"%d",&p);
	
	
	if(p>0)
	{
		while(nr0<p)
		{
			num+=25;
			nr0+=6;
			//aux=num;
			/*if(nr0<p)
			{
				while(aux%25==0)
				{
					nr0+=2;
					aux/=25;
				}
				while(aux%5==0)
				{
					nr0++;
					aux/=5;
				}
			}
			else*/
			if(nr0>=p)
			{
				aux2=nr0-p;
				if(!aux2)
					break;
				if(aux2==1)
					break;
				if(aux2==2)
				{
					num-=5;
					nr0-=2;
					break;
				}
				if(aux2==3)
				{
					num-=10;
					nr0-=3;
					break;
				}
				if(aux2==4)
				{
					num-=15;
					nr0-=4;
					break;
				}
				if(aux2==5)
				{
					num-=20;
					nr0-=5;
					break;
				}
			}
			
		}
		if(nr0==p)
			fprintf(out,"%d",num);
		else
			fprintf(out,"-1");
	}
	else
		fprintf(out,"1");
		
	return 0;
}