如果数字代表与中国的棋盘游戏类似的中心六边形(六角星),则该数字称为星号。几个星号是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或4,并按顺序1、4、1进行。
- 以10为底的星号的最后两位数字始终是01、13、21、33、37、41、53、61、73、81或93。
- 星号的生成函数是
x*(x^2 + 10*x + 1) / (1-x)^3 = x + 13*x^2 + 37*x^3 +73*x^4 .......
- 星号满足线性递归方程
S(n) = S(n-1) + 12(n-1)