Given two integers N and K, the task is to find the Nth root of the K.
Examples:
Input: N = 3, K = 8
Output: 2.00
Explanation:
Cube root of 8 is 2. i.e. 23 = 8Input: N = 2, K = 16
Output: 4.00
Explanation:
Square root of 16 is 4, i.e. 42 = 16
Approach: The idea is to use logarithmic function to find the Nth root of K.
Let D be our Nth root of the K,
Then,
Apply logK on both the sides –
=>
=>
=>
Below is the implementation of the above approach:
C++
// C++ implementation to find the// Kth root of a number using log#include <bits/stdc++.h>// Function to find the Kth root// of the number using log functiondouble kthRoot(double n, int k){ return pow(k, (1.0 / k) * (log(n) / log(k)));}// Driver Codeint main(void){ double n = 81; int k = 4; printf("%lf ", kthRoot(n, k)); return 0;} |
Java
// Java implementation to find the// Kth root of a number using logimport java.util.*;class GFG {// Function to find the Kth root// of the number using log functionstatic double kthRoot(double n, int k){ return Math.pow(k, ((1.0 / k) * (Math.log(n) / Math.log(k))));}// Driver Codepublic static void main(String args[]) { double n = 81; int k = 4; System.out.printf("%.6f", kthRoot(n, k));}}// This code is contributed by rutvik_56 |
Python3
# Python3 implementation to find the # Kth root of a number using logimport numpy as np # Function to find the Kth root # of the number using log function def kthRoot(n, k): return pow(k, ((1.0 / k) * (np.log(n) / np.log(k)))) # Driver Code n = 81k = 4print("%.6f" % kthRoot(n, k))# This code is contributed by PratikBasu |
C#
// C# implementation to find the// Kth root of a number using logusing System;class GFG {// Function to find the Kth root// of the number using log functionstatic double kthRoot(double n, int k){ return Math.Pow(k, ((1.0 / k) * (Math.Log(n) / Math.Log(k))));}// Driver Codepublic static void Main(String []args) { double n = 81; int k = 4; Console.Write("{0:F6}", kthRoot(n, k));}}// This code is contributed by AbhiThakur |
Javascript
<script>// Javascript implementation to find the// Kth root of a number using log// Function to find the Kth root// of the number using log functionfunction kthRoot(n, k){ return Math.pow(k, ((1.0 / k) * (Math.log(n) / Math.log(k))));} // Driver Codevar n = 81;var k = 4;var x = kthRoot(n, k)document.write(x.toFixed(6));// This code is contributed by Ankita saini </script> |
3.000000
Time Complexity: O(1)
Auxiliary Space: O(1)
Ready to dive in? Explore our Free Demo Content and join our DSA course, trusted by over 100,000 neveropen!

… [Trackback]
[…] Read More on that Topic: geeksforgeeks.org/nth-root-of-a-number-using-log/ […]