hier ist das Problem vonwie die geringste Anzahl von Operationen finden x zu berechnen^n
ACM International Collegiate Programming Contest Asia Regional Wettbewerb, Yokohama, 2006-11-05
Beginnend mit x und Multiplikation wiederholt von x
können wir x^31
mit dreißig Multiplikationen berechnen:
x^2 = x * x, x^3 = x^2 * x, x^6 = x^3 * x^3, x^7 = x^6 *x, x^14 = x^7 * x^7 ,
x^15 = x^14 * x, x^30 = x^15 * x^15 , x^31 = x^30 * x
ein Programm schreiben, die geringste Anzahl von Operationen zu finden, mit x
für die gegebene positive ganze Zahl ist und n
n<=200
für n = 31 n für den am wenigsten #Operations 6
beginnend x^n
durch Multiplikation und Division zu berechnen = 50 am wenigsten #Operationen ist 7
Alle Ideen sind willkommen.
Hinweis: http://en.wikipedia.org/wiki/Exponentiation_by_squaring –
@Martinho Fernandes - Potenzierung durch Quadrieren wird nicht die minimale Anzahl von Operationen verwenden. – IVlad