Эникей, пожалуйста, помоги найти ошибку в коде (c++11).

[email protected] в категроии Информатика, вопрос открыт 11.05.2018 в 23:53

Задача - возвести число n в степень m и взять результат по модулю k.
Код:
#include
using namespace std;
int fastpow(int n, int m, int k) {
if (m == 1) return n % k;
else if (m == 0) return 1;
else return fastpow(n, m / 2, k) % k * fastpow(n, m / 2, k) % k * fastpow(n, m % 2, k) % k;
}
int main(){
int n, k, m;
cin >> n >> m >> k;
cout << fastpow(n, m, k);
}

0 ответов

Нет результатов.
Оставлять ответы могут только авторизированные пользователи.
Зарегистрируйтесь или  авторизируйтесь на сайте чтобы оставить ответ на вопрос.