int cal(int num, int n) {

if (n == 1)

return num;


if (n % 2 == 1) {

return cal(num, n / 2) * cal(num, n / 2) * num;

} else {

return cal(num, n / 2) * cal(num, n / 2);

}

}


분할 정복 알고리즘 배운 것에 따라 거듭제곱 구하는 함수 만들었는데 이게 분할 정복 알고리즘이 적용된 게 맞음? 결과값은 제대로 나오는데

그리고 이 경우 시간 복잡도가 O(nlog₂ n) 되는 거 맞나요? 헷갈리네