Pagini recente » Cod sursa (job #2380454) | Cod sursa (job #1867986) | Cod sursa (job #236806) | Cod sursa (job #3175839) | Cod sursa (job #462524)
Cod sursa(job #462524)
#include<fstream.h>
#include<stdio.h>
long a,b,c,k,fav,pos,n;
double posib,favor,prob;
long cif(long aa)
{long bb=aa,ret=0;
while(bb)
{if(bb%10==c)
ret++;
bb/=10;}
return ret;}
int main()
{ifstream q("cifre.in");
freopen("cifre.out","w",stdout);
q>>a>>b>>c>>k;
if(a+9999<b)
{while(a%10000)
{n=cif(a);
if(n>=k)
fav++;
a++;
pos++;}
while(a+9999<b)
{n=cif(a/10000);
if(n+4>=k)
fav++;
if(n+3>=k)
fav+=36;
if(n+2>=k)
fav+=486;
if(n+1>=k)
fav+=2916;
if(n>=k)
fav+=6561;
a+=10000;
pos+=10000;}}
while(a<=b)
{n=cif(a);
if(n>=k)
fav++;
a++;
pos++;}
posib=(double)pos;
favor=(double)fav;
prob=favor/posib;
printf("%.4lf\n",prob);
return 0;}