Cod sursa(job #761777)

Utilizator silviu982001Borsan Silviu silviu982001 Data 27 iunie 2012 14:09:33
Problema Pascal Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.02 kb
#include <stdio.h>
int i,j,nr,n,d,f2,f3,f5,k;
int main()
{
    freopen("pascal.in","r",stdin);
    freopen("pascal.out","w",stdout);

    scanf("%d %d",&n,&d);
    f2=0;f3=0;
    for (i=1; i<=n; i++)
    {
        //adaugare
        k=n-(i-1);
        while (k%2==0)
        {
            k=k/2;
            f2++;
        }
        while (k%3==0)
        {
            k=k/3;
            f3++;
        }
        while (k%5==0)
        {
            k=k/5;
            f5++;
        }

        //reducere
        k=i;
        while (k%2==0)
        {
            k=k/2;
            f2--;
        }
        while (k%3==0)
        {
            k=k/3;
            f3--;
        }
        while (k%5==0)
        {
            k=k/5;
            f5--;
        }

        if (d==2) if (f2>0) nr++;
        if (d==3) if (f3>0) nr++;
        if (d==4) if (f2>1) nr++;
        if (d==5) if (f5>0) nr++;
        if (d==6) if (f2>0 && f3>0) nr++;
    }

    printf("%d\n",nr);

    return 0;
}