📜  最小幂4大于或等于N

📅  最后修改于: 2021-05-08 16:20:44             🧑  作者: Mango

给定整数N ,任务是找到大于或等于N的4的最小幂。

例子:

方法:

  1. 找到给定n的第四根。
  2. 使用floor()函数计算其底值。
  3. 如果n本身是4的幂,则返回n。
  4. 否则,将底值加1。
  5. 返回该数字的四次幂。

下面是上述方法的实现:

C++
// C++ implementation of above approach
#include 
using namespace std;
 
// Function to return the smallest power
// of 4 greater than or equal to n
int nextPowerOfFour(int n)
{
    int x = floor(sqrt(sqrt(n)));
 
    // If n is itself is a power of 4
    // then return n
    if (pow(x, 4) == n)
        return n;
    else {
        x = x + 1;
        return pow(x, 4);
    }
}
 
// Driver code
int main()
{
    int n = 122;
    cout << nextPowerOfFour(n);
    return 0;
}


Java
// Java implementation of above approach
import java.util.*;
import java.lang.Math;
import java.io.*;
 
class GFG
{
     
// Function to return the smallest power
// of 4 greater than or equal to n
static int nextPowerOfFour(int n)
{
    int x = (int)Math.floor(Math.sqrt(Math.sqrt(n)));
 
    // If n is itself is a power of 4
    // then return n
    if (Math.pow(x, 4) == n)
        return n;
    else {
        x = x + 1;
        return (int)Math.pow(x, 4);
    }
}
 
// Driver code
public static void main (String[] args)
              throws java.lang.Exception
{
    int n = 122;
    System.out.println(nextPowerOfFour(n));
}
}
 
// This code is contributed by nidhiva


Python3
# Python3 implementation of above approach
import math
 
# Function to return the smallest power
# of 4 greater than or equal to n
def nextPowerOfFour(n):
    x = math.floor((n**(1/2))**(1/2));
 
    # If n is itself is a power of 4
    # then return n
    if ((x**4) == n):
        return n;
    else:
        x = x + 1;
        return (x**4);
 
# Driver code
 
n = 122;
print(nextPowerOfFour(n));
 
# This code is contributed by Rajput-Ji


C#
// C# implementation of above approach
using System;
class GFG
{
     
// Function to return the smallest power
// of 4 greater than or equal to n
static int nextPowerOfFour(int n)
{
    int x = (int)Math.Floor(Math.Sqrt(Math.Sqrt(n)));
 
    // If n is itself is a power of 4
    // then return n
    if (Math.Pow(x, 4) == n)
        return n;
    else
    {
        x = x + 1;
        return (int)Math.Pow(x, 4);
    }
}
 
// Driver code
public static void Main ()
{
    int n = 122;
    Console.WriteLine(nextPowerOfFour(n));
}
}
 
// This code is contributed by anuj_67..


Javascript


输出:
256