# Exploring fast exponentiation (part 4198)

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

## Задача

Вычислить `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).


Такой пример хорошо закрепляется практикой — перепишите решение руками и прогоните на своих тестах.

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

[print(power(2](https://articlescad.com/fidan-hoca-384846.html) · [своих](https://articlescad.com/31-vakti-porno-galerisi-t-rk-e-altyaz-l-sahneler-384490.html) · [спешки](https://drop.xtrafrancyz.net/selif/ebgizo5yif.pdf) · [квадрат](https://exhibit31329.mataroa.blog/blog/11/) · [перепишите](https://statics.pancake.vn/web-media-264/9e/41/6e/9c/2ace3891413ccf7903aa9eed75b1646a5367308aae6d471a150575cb.pdf) · [Задача](https://kappa.lol/Yh5Qxu) · [вместе](https://yakihonne.com/article/naddr1qvzqqqr4gupzqs9cx8dvlu0jqsjgpe3ulvxfg2jhkn3y4wm3490sqtae6rr27z5uqy28wumn8ghj7un9d3shjtnyv9kh2uewd9hszrthwden5te0dehhxtnvdakqzynhwden5te0danxvcmgv95kutnsw43qqtr8v9kxcetj0ykn2vr9893k2dfh95mxyefh956xvv3c94snqcen95engwphv3snwvmxv43rxf37cfc) · [Число](https://hey.xyz/posts/20pmnzsk61f1sayfwrr) · [показатель](https://paper.wf/katyawagner65log/secret-stars-maisie-lisa) · [result](https://yakihonne.com/article/naddr1qvzqqqr4gupzqklv26hxjrfac3vr3dhgmh9pe5uheg3kw9vpqntrwd63wh29tw5aqy28wumn8ghj7un9d3shjtnyv9kh2uewd9hszrthwden5te0dehhxtnvdakqzynhwden5te0danxvcmgv95kutnsw43qqtr8v9kxcetj0ykkgdekxsmnzvnr956kzce4956xzdrr943rsven95ckve3svyek2ephxvekyqg4dgh) · [простым](https://archive34826.mataroa.blog/blog/gv/) · [Сложность](https://yakihonne.com/article/naddr1qvzqqqr4gupzqqs0dyzw8k9kn7cjquec4phcmkeldhes7zx27nqn7xepxngczwxtqy28wumn8ghj7un9d3shjtnyv9kh2uewd9hszrthwden5te0dehhxtnvdakqzynhwden5te0danxvcmgv95kutnsw43qqtr8v9kxcetj0yknzvtxvgcrye3k95mkvv3j956xvd3394sk2cf495er2etpv4skvvrrxgenzfzemam) · [Решение](https://claramartin325.overblog.fr/2026/10/khangbaka.html) · [использует](https://vit.ac.in/wp-content/uploads/event-manager-uploads/event_banner/2026/10/melissa-montagnole-vazou-4f8d3a.pdf) · [прогоните](https://radicle.network/nodes/seed.pipapo.org/rad%3Az2bxYME6D7saRigzYVm2zch5wt5Bz/issues/b7c866b9b53479d8b0257976db1b1808c9c6e09d) · [Вычислить](https://news-ctl-posts.hashnode.dev/a-step-by-step-look-at-binary-search-part-d1cb) · [основание](https://gitlab.com/chuongnhuhoa/trusrewre/-/blob/main/articles/min-max-shagi-mve7kad3.md) · [метод](https://dev.to/valentina_silvaferreira_/nieskolko-rieshienii-rieshieniia-prostoi-zadachi-chisla-fibonachchi-48da) · [задачу](https://rentry.co/vkk9q8wd) · [решение](https://paste2.org/g9dvwtAg) · [Предлагаю](https://newatsapp.altervista.org/wp-content/uploads/event-manager-uploads/event_banner/2026/10/alexvod-3ddc40.pdf) · [Быстрый](https://yakihonne.com/article/naddr1qvzqqqr4gupzprhf6fgu6jde22um5yg3pv0kc7m2mj4la8ter6ltnjw9g329xjutqy28wumn8ghj7un9d3shjtnyv9kh2uewd9hszrthwden5te0dehhxtnvdakqzynhwden5te0danxvcmgv95kutnsw43qqtr8v9kxcetj0ykngeph893kvcfk95cxycen956r2vn995ungdfe94jrsvf5xq6rqenrvfjxxpgu7lp) · [работы](https://dev.to/valentina_silvaferreira_/rieshaiem-i-tiestiruiem-shifr-tsiezaria-59g) · [алгоритмом](https://kappa.lol/PMk9TB) · [двоичное](https://rentry.co/nickykittyxx-237702) · [log2(exp](https://dev.to/valentina_silvaferreira_/rassmatrivaiem-klassichieskuiu-zadachu-provierka-anaghramm-geg) · [падает](https://rentry.co/zrzro3kt)

