Pagini recente » Cod sursa (job #3228952) | Cod sursa (job #3248450) | Cod sursa (job #274087) | Cod sursa (job #1286798) | Cod sursa (job #1150195)
#include<cstdio>
#include<cstdlib>
#include<ctime>
using namespace std;
#define MAX 800000
int A , B ,C , K , cf;
bool inline verif(int x)
{
int k = 0;
while(x)
{
if(x%10 == C)k++;
x/=10;
}
return k >= K;
}
int main()
{
freopen("cifre.in" , "r" , stdin );
freopen("cifre.out" , "w" , stdout );
scanf("%d%d%d%d" , &A , &B , &C , &K );
if(B - A+1 < MAX)
{
for(int i = A ; i <= B ; ++i )
if(verif(i))cf++;
printf("%.4f" , (float)cf/(B-A+1));
}
else
{
srand(time(NULL));
int dim = (B-A)/100;
int i = A+dim;
while(i <= B)
{
for(int j = 1 ; j <= MAX/100 ; ++j )
{
int x = rand()%(i-A) + A;
if(verif(x))cf++;
}
i+=dim;
}
printf("%.4f" , (float)cf/MAX);
}
return 0;
}