Pagini recente » Cod sursa (job #1251723) | Cod sursa (job #901951) | Cod sursa (job #70552) | Cod sursa (job #3244998) | Cod sursa (job #1545363)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("pascal.in");
ofstream fout("pascal.out");
int main()
{long long r,c,d,dr2=0,dr3=0,dr5=0,p,aux,aux1,aux2,rez;
fin>>r>>d;
p=2;while(p<=r){dr2+=r/p;p*=2;}
p=3;while(p<=r){dr3+=r/p;p*=3;}
p=5;while(p<=r){dr5+=r/p;p*=5;}
rez=0;
if(d==2)
for(c=1;c<r;c++)
{aux=dr2;
p=2;while(p<=r-c){aux-=(r-c)/p;p*=2;}
p=2;while(p<=c){aux-=(c)/p;p*=2;}
if(aux>0)rez++;}
else if(d==3)
for(c=1;c<r;c++)
{aux=dr3;
p=3;while(p<=r-c){aux-=(r-c)/p;p*=3;}
p=3;while(p<=c){aux-=(c)/p;p*=3;}
if(aux>0)rez++;}
else if(d==4)
for(c=1;c<r;c++)
{aux=dr2;
p=2;while(p<=r-c){aux-=(r-c)/p;p*=2;}
p=2;while(p<=c){aux-=(c)/p;p*=2;}
if(aux >1 && aux%2==0)rez++;}
else if(d==5)
for(c=1;c<r;c++){
aux=dr5;
p=5;while(p<=r-c){aux-=(r-c)/p;p*=5;}
p=5;while(p<=c){aux-=(c)/p;p*=5;}
if(aux>0)rez++;
}
else if(d==6)
for(c=1;c<r;c++)
{ aux1=dr3;
p=3;while(p<=r-c){aux-=(r-c)/p;p*=3;}
p=3;while(p<=c){aux-=(c)/p;p*=3;}
aux2=dr2;
p=2;while(p<=r-c){aux-=(r-c)/p;p*=2;}
p=2;while(p<=c){aux-=(c)/p;p*=2;}
if(aux1>0 && aux2>0)rez++;
}
fout<<rez;
}