Cod sursa(job #245473)

Utilizator Bogdan_tmmTirca Bogdan Bogdan_tmm Data 18 ianuarie 2009 01:16:38
Problema Pascal Scor 70
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.67 kb
#include<iostream.h>
#include<stdio.h>
FILE *f=fopen("pascal.in","r"),*g=fopen("pascal.out","w");
long f1(long x,long v)
{
	long ret=0;
	while(x%v==0)
	{
		x=x/v;
		ret++;
	}
	return ret;
}
int main()
{
	long ret=0,c2=0,c3=0,c5=0,i,d;
	fscanf(f,"%ld %ld",&i,&d);
	for(long j=1;j<i;j++)
	{
    c2 += f1(i + 1 - j, 2);
    c3 += f1(i + 1 - j, 3);
    c5 += f1(i + 1 - j, 5);
    c2 -= f1(j, 2);
    c3 -= f1(j, 3);
    c5 -= f1(j, 5);
    if (d == 2 && c2 > 0) ret++;
    if (d == 3 && c3 > 0) ret++;
    if (d == 4 && c2 > 1) ret++;
    if (d == 5 && c5 > 0) ret++;
    if (d == 6 && c2 > 0 && c3 > 0) ret++;
	}
	fprintf(g,"%ld\n",ret);
	return 0;
}