📜  程序查找星号

📅  最后修改于: 2021-04-26 18:29:01             🧑  作者: Mango

如果数字代表与中国的棋盘游戏类似的中心六边形(六角星),则该数字称为星号。几个星号是1、13、37、73、121、181、253、337、433等。
例子:

Input : n = 2
Output : 13

Input : n = 4
Output : 73

Input : n = 6
Output : 181

如果我们仅举几个例子,我们可以注意到第n个星号由以下公式给出:

n-th star number = 6n(n - 1) + 1 

下面是上述公式的实现。

C++
// C++ program to find star number
#include 
using namespace std;
 
// Returns n-th star number
int findStarNum(int n)
{
    return (6 * n * (n - 1) + 1);
}
 
// Driver code
int main()
{
    int n = 3;
    cout << findStarNum(n);
    return 0;
}


Java
// Java program to find star number
import java.io.*;
 
class GFG {
    // Returns n-th star number
    static int findStarNum(int n)
    {
        return (6 * n * (n - 1) + 1);
    }
 
    // Driver code
    public static void main(String args[])
    {
        int n = 3;
        System.out.println(findStarNum(n));
    }
}
 
// This code is contributed
// by Nikita Tiwari.


Python3
# Python3 program to
# find star number
 
# Returns n-th
# star number
def findStarNum(n):
 
    return (6 * n * (n - 1) + 1)
 
# Driver code
n = 3
print(findStarNum(n))
 
# This code is contributed by Smitha Dinesh Semwal


C#
// C# program to find star number
using System;
 
class GFG {
    // Returns n-th star number
    static int findStarNum(int n)
    {
        return (6 * n * (n - 1) + 1);
    }
 
    // Driver code
    public static void Main()
    {
        int n = 3;
        Console.Write(findStarNum(n));
    }
}
 
// This code is contributed
// by vt_m.


PHP


Javascript


输出 :

37

起始编号的有趣特性:

  1. 星号的数字根始终为1或4,并按顺序1、4、1进行。
  2. 以10为底的星号的最后两位数字始终是01、13、21、33、37、41、53、61、73、81或93。
  3. 星号的生成函数是
x*(x^2 + 10*x + 1) / (1-x)^3 = x + 13*x^2 + 37*x^3 +73*x^4 .......
  1. 星号满足线性递归方程
S(n) = S(n-1) + 12(n-1)