Cod sursa(job #2207731)

Utilizator toadehuPuscasu Razvan Stefan toadehu Data 26 mai 2018 16:03:58
Problema Cifre Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.15 kb
#include<fstream>

using namespace std;

long long x,p,n,a,b,k,c,nr;

int cifre(int n)
{
    int nr2=0;
    while(n)
    {
        if(n%10==c)
        {
            nr2++;
        }
        n/=10;
    }
    return nr2;
}

int main()
{
    ifstream fin("cifre.in");
    ofstream fout("cifre.out");
    fin>>a>>b>>c>>k;
    if(b-a>=10000)
    {
        while(a%10000)
        {
            if(cifre(a)>=k)
                nr++;
            a++;
            p++;
        }
        for(x=0; b-a>=10000; a+=10000,p+=10000)
        {
            x=cifre(a/10000);
            if(x>=k)
            {
                nr+=6561;
            }
            if(x>=k-1)
            {
                nr+=2916;
            }
            if(x>=k-2)

            {
                nr+=487;
            }
            if(x>=k-3)
            {
                nr+=35;
            }
            if(x>=k-4)
            {
                nr++;
            }
        }
    }
    while(a<=b)
    {
        if(cifre(a)>=k)
        {
            nr++;
        }
        a++;
        p++;
    }
    fout<<(double)nr/p;
    return 0;
}