PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Anzahl von Zahlen mit 0,n Ziffern, Zeitproblem



Leange
16.05.2016, 22:29
Hi

Folgendes Problem:

Benutzer gibt Anzahl der maximalen Stellen ein Bsp: 3 (Maximale 15)
Programm soll Anzahl der Zahlen ermitteln die min. eine 0 enthalten Bsp: 10-999 -> Lösung 9 (10, 20, ... 90)
Für Eingabe 3 wäre die Lösung 180 usw. 0 selbst zählt nicht mit.

Soweit kein Problem, allerdings scheitere ich ab 9 Ziffern am Zeitlimit von 5 Sek.

Ich denke es ist eher nen Mathe Problem, irgendwelche Ideen?

MfG Leange

Edit: erledigt


uint32_t digits = getcinn();
uint64_t count = 0 ;

for (uint32_t i = digits; i > 0; i--)
{
count += 9 * pow(10.0, i - 1) - pow(9.0, i);
}

blackberry
18.05.2016, 09:24
Ich denke es ist eher nen Mathe Problem, irgendwelche Ideen?
Ja, Programmieren muss man dafür nicht wirklich können; Man kann leicht eine recht übersichtliche Formel für die gesuchte Anzahl angeben.
http://s32.postimg.org/y07mlys1x/image.png