Cod sursa(job #127663)

Utilizator gabitzish1Gabriel Bitis gabitzish1 Data 24 ianuarie 2008 20:04:52
Problema Pascal Scor 50
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.51 kb
#include<stdio.h>
int main()
{long p,i,j,ii,ij,jj,d,sol=0,var;
FILE*f=fopen("pascal.in","r");
FILE*g=fopen("pascal.out","w");
fscanf(f,"%ld %ld",&i,&d);
if (d==4) {d=2;var=1;}
else var=0;
if (d == 6) d= 3;
//i!/(i-j)!*j!
if (d==2||d==3||d==5||d==4)
	{
	p=d;
	ii=0;
	while(i/p!=0) {ii+=i/p; p*=d;}
	for(j=1;j<=i;j++)
		{
		jj=0; p=d;
		while (j/p!=0){jj+=(j/p); p*=d;}
		 ij=0; p=d;
		 while((i-j)/p!=0) {ij+=(i-j)/p; p*=d;}
		if ((ii-ij-jj>var)) sol++;
		}}
fprintf(g,"%ld",sol);
return 0;
}