给定整数N ,任务是找到大于或等于N的4的最小幂。
例子:
Input: N = 12
Output: 16
24 = 16 which is the next required
greater number after 12.
Input: N = 81
Output: 81
方法:
- 找到给定n的第四根。
- 使用floor()函数计算其底值。
- 如果n本身是4的幂,则返回n。
- 否则,将底值加1。
- 返回该数字的四次幂。
下面是上述方法的实现:
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