Pagini recente » Cod sursa (job #2860575) | Cod sursa (job #258828) | Cod sursa (job #2567857) | Cod sursa (job #17892)
Cod sursa(job #17892)
#include<fstream.h>
unsigned long ras;
int main()
{ifstream f("pascal.in");
ofstream g("pascal.out");
unsigned long r,val,n1,n2,d,i,l,j,c1,c2;
f>>r>>d;f.close();
if((r==0)||(r==1)) {g<<0<<'\n';g.close();return 0;}
val=0;
if(d==6) d=3;
if(d==4) {for(i=2;i<=r;i=i*2) val=val+r/i;
//c1=val%2;
//val=val/2;
}
else for(i=d;i<=r;i=i*d) val=val+r/i;
if(r%2)
{l=r/2;
for(i=0;i<=l;i++)
{n2=0;n1=i;
if(d==4)
{if(n1) for(j=2;j<=n1;j=j*2) n2=n2+n1/j;
n1=r-i;
if(n1) for(j=2;j<=n1;j=j*2) n2=n2+n1/j;
//c2=n2%2;n2=n2/2;
//if(((c1-c2)==0)&&((val-n2)>=1)) ras++;
//else if((val-n2)>=2) ras++;
if((val-n2)>=2) ras++;
}
else
{if(n1) for(j=d;j<=n1;j=j*d) n2=n2+n1/j;
n1=r-i;
if(n1) for(j=d;j<=n1;j=j*d) n2=n2+n1/j;
if((val-n2)>0) ras++;
}
}
ras=ras*2;g<<ras<<'\n';g.close();return 0;
}
else
{l=r/2;
for(i=0;i<l;i++)
{n2=0;n1=i;
if(d==4)
{if(n1) for(j=2;j<=n1;j=j*2) n2=n2+n1/j;
n1=r-i;
if(n1) for(j=2;j<=n1;j=j*2) n2=n2+n1/j;
//c2=n2%2;n2=n2/2;
//if(((c1-c2)==0)&&((val-n2)>=1)) ras++;
//else if((val-n2)>=2) ras++;
if((val-n2)>=2) ras++;
}
else
{if(n1) for(j=d;j<=n1;j=j*d) n2=n2+n1/j;
n1=r-i;
if(n1) for(j=d;j<=n1;j=j*d) n2=n2+n1/j;
if((val-n2)>0) ras++;
}
}
ras=ras*2;n1=l;n2=0;
if(d==4)
{if(n1) for(j=2;j<=n1;j=j*2) n2=n2+n1/j;
n1=r-l;
if(n1) for(j=2;j<=n1;j=j*2)
n2=n2+n1/j;
//c2=n2%2;n2=n2/2;
//if(((c2-c1)==0)&&((val-n2)>=1)) ras++;
//else if((val-n2)>=2) ras++;
if((val-n2)>=2) ras++;
}
else
{if(n1) for(j=d;j<=n1;j=j*d) n2=n2+n1/j;
n1=r-l;
if(n1) for(j=d;j<=n1;j=j*d) n2=n2+n1/j;
if((val-n2)>0) ras++;
}
g<<ras<<'\n';g.close();return 0;
}
}