# Understanding fast exponentiation

Предлагаю решить задачу вместе: без спешки, с объяснением каждой строки.

## Задача

Вычислить `base ** exp` двумя способами: простым умножением и алгоритмом быстрого возведения в степень.

## Решение

```python
def power(base: int, exp: int) -> int:
    result = 1
    for _ in range(exp):
        result *= base
    return result


def fast_power(base: int, exp: int) -> int:
    result = 1
    while exp > 0:
        if exp % 2 == 1:
            result *= base
        base *= base
        exp //= 2
    return result


print(power(2, 10), fast_power(2, 10))
```

## Как это работает

Быстрый метод использует двоичное представление показателя: показатель делится на два, а основание возводится в квадрат. Число умножений падает с `exp` до `log2(exp)`.

## Пример работы

```text
1024 1024
```

## Сложность

O(exp) против O(log exp).


Это решение удобно как отправная точка для экспериментов: попробуйте изменить входные данные и проследить за поведением кода.

**Читайте также:**

[решение](https://articlescad.com/t-rk-ensest-gizli-376609.html) · [O(log](https://contracosta.news/wp-content/uploads/event-manager-uploads/event_banner/2026/10/anti-estrogen-and-progesterone-2cc0b4.pdf) · [основание](https://cultmtl.com/wp-content/uploads/event-manager-uploads/event_banner/2026/10/omegle-flash-e98f7c.pdf) · [делится](https://avdc.org/wp-content/uploads/event-manager-uploads/event_banner/2026/10/phim-sex-hoc-sinh-thcs-661f17.pdf) · [двоичное](https://sway.cloud.microsoft/hK3IWKMHw0lvASF0) · [входные](https://discuss.tchncs.de/post/65440186) · [python](https://claramichel102.overblog.fr/2026/10/skuddbutt-fourarms.html) · [Сложность](https://dev.to/valentina_silvaferreira_/rieshaiem-i-tiestiruiem-shifr-tsiezaria-59g) · [range(exp](https://articlescad.com/fuyuzora-izumo-doujinshi-comics-gallery-japanese-adult-manga-376985.html) · [простым](https://blogfreely.net/nataliarussell2/star-wars-outlaws-nude-mod-kay-vess-and-leia-nsfw-skins) · [представление](https://dev.to/valentina_silvaferreira_/rassmatrivaiem-klassichieskuiu-zadachu-provierka-anaghramm-geg) · [поведением](https://e-soccertime.com/novasheen?f=linkcentre) · [использует](https://hey.xyz/posts/2n53dvsq8qq2nd9zh1m) · [быстрого](https://paste2.org/g2AKYL2D) · [Задача](https://blogfreely.net/igorcollins26/ipx-666) · [Быстрый](https://hey.xyz/posts/10afn6ch9dxk15cp4jg) · [задачу](https://gellaryforum.freeflarum.com/d/28235-28235-maisie-starsession) · [точка](https://dev.to/valentina_silvaferreira_/nieskolko-rieshienii-rieshieniia-prostoi-zadachi-chisla-fibonachchi-48da) · [показателя](https://leahlaurent527.overblog.fr/2026/10/thechickengirl-sf.html) · [против](https://vit.ac.in/wp-content/uploads/event-manager-uploads/event_banner/2026/10/imx-to-ams-liliana-7c1dee.pdf) · [падает](https://gal45400.carrd.co/) · [power(base](https://drop.xtrafrancyz.net/selif/c4b61jbsmv.pdf) · [отправная](https://yakihonne.com/article/naddr1qvzqqqr4gupzplpldy7ycmeurlrejnh0psluddjcz5htvmsy8dk0ur4h6tj5x2hjqy28wumn8ghj7un9d3shjtnyv9kh2uewd9hszrthwden5te0dehhxtnvdakqzynhwden5te0danxvcmgv95kutnsw43qqtr8v9kxcetj0yknjdpkxymnqve4943n2vp3956rgefs95uryvps95ukvwphvfsnvwtx8q6kvukw938) · [O(exp](https://hey.xyz/posts/my11tfhhp6pfd22y6d)

