Cod sursa(job #363354)

Utilizator ReaALFAnTaSyBrad Jackson ReaALFAnTaSy Data 12 noiembrie 2009 20:59:47
Problema Factorial Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.8 kb
#include <iostream>
using namespace std;

unsigned int t1[100000000]={1,0},t2[100000000]={0};

bool zero(long p)
{
		for(long i=0;i<p;i++)if(t1[i]!=0)return(false);
		return(true);
	}

int main()
{
	FILE *f;
	f=fopen("fact.in","r");
	long p;
	fscanf(f,"%ld",&p);
	fclose(f);

	
	
	long n=2;
	long k;
	while(!zero(p))
	{
		k=0;
		long x;
		while(k<p){
			x=t1[k]*n;
			{
				long y=k;
			    while(x!=0){
				t2[y]+=x%10;
				x/=10;
				x+=t2[y]/10;
				t2[y]%=10;
				y++;
				//printf("   KKT t2[%d]=%d\n",y-1,t2[y-1]);
				}
			}
			k++;
		}
		for(long i=0;i<p;i++){
			//printf("%d",t2[i]);
			t1[i]=t2[i],t2[i]=0;
		}
				//printf(" NNT n=%d\n",n);
		n++;
		//system("pause");
	}

	f=fopen("fact.out","w");
	fprintf(f,"%ld",n-1);
	fclose(f);

	return(0);
}