Cod sursa(job #18321)

Utilizator dragomir_andreiDragomir Andrei dragomir_andrei Data 18 februarie 2007 11:29:37
Problema Pascal Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.66 kb
#include<stdio.h>
long int r,d,p2,p3,p5,q2,q3,q5,up,down,cont,i;
int main()
{
	FILE *f;
	f=fopen("pascal.in","r");
	fscanf(f,"%1d%1d",&r,&d);
	fclose(f);
	if(d==2) {p2=1;p3=0;p5=0;}
	if(d==3) {p2=0;p3=1;p5=0;}
	if(d==4) {p2=0;p3=2;p5=0;}
	if(d==5) {p2=0;p3=0;p5=1;}
	if(d==6) {p2=1;p3=1;p5=0;}
	for(i=1;i<=r-1;i++)
	{up=r+1-i;down=i;
	while(up%2==0) {q2++;up/=2;}
	while(down%2==0) {q2--;down/=2;}
	while(up%3==0) {q3--;down/=3;}
	while(down%3==0) {q3--;down/=3;}
	while(up%5==0) {q5++;up/=5;}
	while(down%5==0) {q5--;down/=5;}
	if((p2<=q2)&&(p3<=q3)&&(p5<=q5)) cont++;
	}
	f=fopen("pascal.out","w");
	fprintf(f,"1d\n",cont);
	fclose(f);
	return 0;
}