Cod sursa(job #885337)
| Utilizator | Data | 21 februarie 2013 21:04:19 | |
|---|---|---|---|
| Problema | Cifre | Scor | 50 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.49 kb |
#include<stdio.h>
#include<math.h>
FILE *f = fopen("cifre.in","r");
FILE *g = fopen("cifre.out","w");
int A,B,C,K,Sol;
void citire(void)
{
fscanf(f,"%d %d %d %d",&A,&B,&C,&K);
}
inline int nrCifre(int A,int K)
{
int nr = (A%10 == K);
A /= 10;
for(;A;A/=10)
nr += (A%10 == K);
return nr;
}
void Rezolvare(void)
{
for(int i=A;i<=B;i++)
Sol += (nrCifre(i,C) >= K);
}
int main()
{
citire();
Rezolvare();
fprintf(g,"%lf\n",(double)Sol/(B-A+1));
}
