문제
곱셈
코드
#include <iostream>
#include <vector>
#include <list>
#include <queue>
#include <stack>
#include <cmath>
using namespace std;
unsigned long long ft_pow(unsigned long long i, unsigned long long j, unsigned long long k)
{
unsigned long long num;
if (j == 1)
return (i % k);
num = ft_pow(i, j/2, k);
num = num * num % k;
if (j % 2 == 1)
return (num * i % k);
else
return (num);
}
int main()
{
ios::sync_with_stdio(0);
cin.tie(0);
unsigned long long i, j, k;
cin >> i >> j >> k;
cout << ft_pow(i, j, k);
return (0);
}