📜  二十面体数

📅  最后修改于: 2021-10-23 08:05:46             🧑  作者: Mango

给定一个数 n,找出第 n 个二十面体数。二十面体数是代表二十面体(具有 20 个面的多面体。
前几个二十面体数是 1, 12, 48, 124, 255, 456, 742, 1128, 1629……..

例子:

Input : 5
Output :255

Input :10
Output :2260

二十面体数的第 n项由下式给出:

I_{n}=\frac{n(5n^2-5n+2)}{2}

上述想法的基本实现:

C++
// Icosahedral number to find
// n-th term in C++
#include 
using namespace std;
 
// Function to find
// Icosahedral number
int icosahedralnum(int n)
{
    // Formula to calculate nth
    // Icosahedral number &
    // return it into main function.
    return (n * (5 * n * n - 5 * n + 2)) / 2;
}
 
// Driver Code
int main()
{
    int n = 7;
 
    cout << icosahedralnum(n);
    return 0;
}


Java
// Icosahedral number to find
// n-th term in Java
import java.io.*;
 
class GFG {
     
    // Function to find
    // Icosahedral number
    static int icosahedralnum(int n)
    {
        // Formula to calculate nth
        // Icosahedral number &
        // return it into main function.
         
        return (n * (5 * n * n - 5 *
                            n + 2)) / 2;
    }
 
    // Driver Code
    public static void main (String[] args)
    {
        int n = 7;
        System.out.println(
                        icosahedralnum(n));
    }
}
 
// This code is contributed by aj_36.


Python3
# Python 3 Program to find
# nth Icosahedral number
 
# Icosahedral number
# number function
def icosahedralnum(n) :
     
    # Formula to calculate nth
    # Icosahedral number
    # return it into main function.
    return (n * (5 * n * n -
                 5 * n + 2)) // 2
 
 
# Driver Code
if __name__ == '__main__' :
         
    n = 7
    print(icosahedralnum(n))
 
# This code is contributed aj_36


C#
// Icosahedral number to
// find n-th term in C#
using System;
 
class GFG
{
     
    // Function to find
    // Icosahedral number
    static int icosahedralnum(int n)
    {
        // Formula to calculate
        // nth Icosahedral number
        // & return it into main
        // function.
        return (n * (5 * n * n -
                     5 * n + 2)) / 2;
    }
 
    // Driver Code
    static public void Main ()
    {
        int n = 7;
        Console.WriteLine(icosahedralnum(n));
    }
}
 
// This code is contributed by ajit


PHP


Javascript


输出:

742

时间复杂度: O(1)
辅助空间: O(1)