📜  长度为n且由1到n的元素组成的双音阵列的数量

📅  最后修改于: 2021-06-25 18:04:24             🧑  作者: Mango

对于给定的数字n(n> 1),我们需要找到创建长度为n的双音数组的方法,该数组由1到n的所有元素组成。
注意:[1,2,…n]和[n,n – 1…2,1]不被视为双音阵列。

例子:

Input : n = 3
Output : 2

Explanation : [1, 3, 2] & [2, 3, 1] 
are only two ways of bitonic array 
formation for n = 3.

Input : n = 4
Output : 6

对于创建一个双音数组,假设我们有一个长度为n的空数组,并且我们希望以双音形式将1到n的数字放入该数组中,现在,我们想将数字1加起来,只有2种可能的方式将数字1都放置在端点位置,因为如果我们将1放置在端点以外的任何位置,则数字1两侧的数字都大于1。之后,我们可以想象我们有一个长度为n-1的数组,现在由于相同的原因,我们想将数字2放进去,所以我们有两种方法,依此类推,直到我们要把数字n放进去,我们只有1种方法而不是2,所以我们有n-1个数字,可以用2种方式表示,因此通过组合算术的乘法规则,答案为2 ^ n-1,最后我们应从答案中减去2,因为排列为1 2 3 4…。 n和n n-1…3 2 1不应计算在内。

C++
// C++ program for finding
// total bitonic array
#include
using namespace std;
 
// Function to calculate no. of ways
long long int maxWays( int n)
{
    // return (2^(n - 1)) -2
    return (pow(2, n - 1) - 2);
}
 
// Driver Code
int main()
{
    int n = 6;
    cout << maxWays(n);
    return 0;
}


Java
// Java program for finding
// total bitonic array
class GFG
{
     
    // Function to calculate no. of ways
    static int maxWays( int n)
    {
         
        // return (2 ^ (n - 1)) -2
        return (int)(Math.pow(2, n - 1) - 2);
    }
     
    // Driver Code
    public static void main (String[] args)
    {
        int n = 6;
         
        System.out.print(maxWays(n));
    }
}
 
// This code is contributed by Anant Agarwal.


Python3
# python program for finding
# total bitonic array
 
# Function to calculate no. of ways
def maxWays(n):
     
    # return (2^(n - 1)) -2
    return (pow(2, n - 1) - 2);
  
# Driver Code
n = 6;
print(maxWays(n))
  
# This code is contributed by Sam007


C#
// C# program for finding
// total bitonic array
using System;
 
class GFG
{
     
    // Function to calculate no. of ways
    static int maxWays( int n)
    {
         
        // return (2 ^ (n - 1)) -2
        return (int)(Math.Pow(2, n - 1) - 2);
    }
     
    // Driver Code
    public static void Main ()
    {
        int n = 6;
         
        Console.Write(maxWays(n));
    }
}
 
// This code is contributed by nitin mittal.


PHP


Javascript


输出:

30