Cod sursa(job #803218)

Utilizator calincojCalin Cojocariu calincoj Data 27 octombrie 2012 11:13:39
Problema Pascal Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.71 kb
#include<cstdio>
#include<vector>
using namespace std;
int D,i,j,rand;
void read();void solve();int div(int,int);int fact(int);
int main()
{
    read();
    solve();
    return 0;
}
void read()
{
    freopen("pascal.in","r",stdin);
    freopen("pascal.out","w",stdout);
    scanf("%d %d",&rand,&D);
}
int div(int a,int b)
{
    if(b==0) return a;
    else return div(b,a%b);
}
int fact(int a)
{
    int p=1;
    for(i=1;i<=a;i++)
    {
        p*=i;
    }
    return p;
}
void solve()
{
    int j=0,nr=0,x=0;
    for(j=0;j<=rand;j++)
    {
        //printf("%d ",fact(rand)/(fact(rand-j)*fact(j)));
        if(div(fact(rand)/(fact(rand-j)*fact(j)),D)!=1) nr++;
    }
    printf("%d",nr);
}