Cod sursa(job #714907)

Utilizator iarbaCrestez Paul iarba Data 16 martie 2012 12:25:41
Problema Pascal Scor 50
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.86 kb
#include <stdio.h>
FILE *f,*g;
long n,exp,i,j,p,tot,r,d,tot2,tot3,tot5;
int main()
{
	f=fopen("pascal.in","r");
	g=fopen("pascal.out","w");
	fscanf(f,"%ld%ld",&n,&d);
	for(i=0;i<=n/2;i++){
		 j=n-i;
		 p=2;tot2=0;
		 while(n/p){
			 tot2+=(n/p)-(i/p)-(j/p);
			 p*=2;
		           }
		 p=3;tot3=0;
		 while(n/p){
			 tot3+=(n/p)-(i/p)-(j/p);
			 p*=3;
		           }
		 p=5;tot5=0;
		 while(n/p){
			 tot5+=(n/p)-(i/p)-(j/p);
			 p*=5;
		           }
		 if(d==2){
			 if(tot2>0){r+=2;if(i==j){r--;}}
		         }
		 if(d==3){
			 if(tot3>0){r+=2;if(i==j){r--;}}
		         }
		 if(d==4){
			 if(tot2>1){r+=2;if(i==j){r--;}}
		         }
		 if(d==5){
			 if(tot5>0){r+=2;if(i==j){r--;}}
		         }
		 if(d==6){
			 if((tot2>0)&&(tot3>0)){r+=2;if(i==j){r--;}}
		         }
					   }
	fprintf(g,"%ld",r);
	fclose(f);fclose(g);
return 0;
}