Cod sursa(job #1922718)
| Utilizator | Data | 10 martie 2017 18:36:03 | |
|---|---|---|---|
| Problema | Cifre | Scor | 10 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.68 kb |
#include <fstream>
#include <iostream>
using namespace std;
ifstream fin("cifre.in");
ofstream fout("cifre.out");
int verificare_cifre(int n,int c,int k)
{
int ct=0,ok=1;
while(n!=0 && ok)
{
if(n%10==c)
{
ct++;
ok=0;
}
n/=10;
}
if(ct>=k)
return 1;
else
return 0;
}
int main()
{
long long A,B;
int C,K;
double p;
int nr=0;
fin>>A>>B>>C>>K;
for(int i=A;i<=B;i++)
{
if(verificare_cifre(i,C,K)==1)
nr++;
}
p=(double)nr/(B-A+1);
p=(int)(p*10000);
p=(double)(p/10000);
fout<<p;
return 0;
}
