Cod sursa(job #514893)

Utilizator iu.ciocoiuIulian iu.ciocoiu Data 19 decembrie 2010 20:25:38
Problema Cifre Scor 0
Compilator fpc Status done
Runda Arhiva de probleme Marime 1.46 kb
{Eugenia ii pune adesea intrebari dificile lui Zaharel, nu pentru ca nu stie raspunsul, dar vrea sa vada
cat de perspicace este Zaharel. Uneori exagereaza si intrebarile ei sunt foarte grele, chiar si pentru Zaharel;
atunci acesta va cere ajutorul vostru! Astazi Eugenia i-a pus urmatoarea intrebare lui Zaharel:
"eu ma gandesc la un numar intreg din intervalul [A...B], care este probabilitatea ca numarul la care ma gandesc
sa contina cel putin K cifre de valoare C"?

Cerinta
Ajutati-l pe Zaharel sa raspunda cat mai repede la intrebare.

Date de Intrare
Pe prima linie din fisierul de intrare se gasesc numerele intregi A, B, C si K (in ordinea aceasta)

Date de Iesire
Pe prima linie din fisierul de iesire se va scrie probabilitatea, un numar real cu patru zecimale, ca numarul din intervalul [A...B] la care se gandeste Eugenia sa aiba cel putin K cifre de valoare C.

Restrictii
=> 0 <= A <= B <= 1.000.000.000
=> 0 <= C, K <= 9
=> Pentru cel putin 50% din teste B-A <= 1.000.000}


program cifra_III;
var a,b,c,k,cop,i,n:longint;
    p:real;
    f,g:text;
begin
assign (f,'cifre.in'); reset (f);
assign (g,'cifre.out'); rewrite (g);
read (f,a,b,c,k);
n:=0;
for i:=a to b do begin cop:=i;
                       while (cop>0) do begin if (cop mod 10=c) then n:=n+1;
                                              cop:=cop div 10;
                                        end;
                 end;
p:=n/b;
write (g,p:4:4);
close (f);
close (g);
end.