Cod sursa(job #13150)

Utilizator Ady.hAdrian Hada Ady.h Data 5 februarie 2007 21:38:36
Problema Pascal Scor 40
Compilator c Status done
Runda Arhiva de probleme Marime 0.63 kb
#include <stdio.h>

inline int puterea(int x,int d)
{if (x==0) return 0;
if (x%d!=0) return 0;
x/=d;
if (x%d!=0) return 1;
x/=d;
int i;
i=2;
while (x%d==0)
	{i++;
	x/=d;
	}
return i;
}

int main()
{
FILE *pf;
pf=fopen("pascal.in","r");
int r,d;
fscanf(pf,"%d %d",&r,&d);
fclose(pf);
int i,sus=0,jos=0,numar=0;
for (i=1;i<r;i++)
	{
	jos=jos+(puterea(i,d)-puterea(r-i+1,d));
	sus=puterea(r,d);
	if (sus-jos>0) numar++;
	//if (sus-jos<=0) printf("%d %d %d\n",i,sus,jos);
	}
pf=fopen("pascal.out","w");
if (((r==0)||(r==1))&&(d==1)) fprintf(pf,"%d",r+1);
	else fprintf(pf,"%d",numar);
fclose(pf);
return 0;
}