gunwooyeon   6년 전

 두 방법 모두 Visual Studio로 찍었을 때 같은 값이 나오는데


밑에 코드와 비교하여 작성한 코드의 방법이 안되는 이유가 궁금합니다!!


long long mul(long long a, long long b, long long c) {
 if (b == 0) {
  return 1LL;
 }
 else if (b == 1) {
  return a%c;
 }
 else if (b % 2 == 0) {
  long long temp = mul(a, b / 2, c);
  return (temp * temp) % c;
 }
 else {
  return (a * mul(a, b - 1, c)) % c;
 }
}

// 기존의 방법

댓글을 작성하려면 로그인해야 합니다.