给定一个整数N表示圆周上的点,任务是找到使用这些点形成的四边形的数量。
例子:
Input: N = 5
Output: 5
Input: N = 10
Output: 210
方法:思路是通过排列组合,利用圆周上的N个点,求出可能的四边形个数。可能的四边形数为 .
下面是上述方法的实现:
C++
// C++ implementation to find the
// number of quadrilaterals formed
// with N distinct points
#include
using namespace std;
// Function to find the factorial
// of the given number N
int fact(int n)
{
int res = 1;
// Loop to find the factorial
// of the given number
for(int i = 2; i < n + 1; i++)
res = res * i;
return res;
}
// Function to find the number of
// combinations in the N
int nCr(int n, int r)
{
return (fact(n) / (fact(r) *
fact(n - r)));
}
// Driver Code
int main()
{
int n = 5;
// Function Call
cout << (nCr(n, 4));
}
// This code is contributed by rock_cool
Java
// Java implementation to find the
// number of quadrilaterals formed
// with N distinct points
class GFG{
// Function to find the number of
// combinations in the N
static int nCr(int n, int r)
{
return (fact(n) / (fact(r) *
fact(n - r)));
}
// Function to find the factorial
// of the given number N
static int fact(int n)
{
int res = 1;
// Loop to find the factorial
// of the given number
for(int i = 2; i < n + 1; i++)
res = res * i;
return res;
}
// Driver Code
public static void main(String[] args)
{
int n = 5;
// Function Call
System.out.println(nCr(n, 4));
}
}
// This code is contributed by 29AjayKumar
Python3
# Python3 implementation to find the
# number of quadrilaterals formed
# with N distinct points
# Function to find the number of
# combinations in the N
def nCr(n, r):
return (fact(n) / (fact(r)
* fact(n - r)))
# Function to find the factorial
# of the given number N
def fact(n):
res = 1
# Loop to find the factorial
# of the given number
for i in range(2, n + 1):
res = res * i
return res
# Driver Code
if __name__ == "__main__":
n = 5
# Function Call
print(int(nCr(n, 4)))
C#
// C# implementation to find the
// number of quadrilaterals formed
// with N distinct points
using System;
class GFG{
// Function to find the number of
// combinations in the N
static int nCr(int n, int r)
{
return (fact(n) / (fact(r) *
fact(n - r)));
}
// Function to find the factorial
// of the given number N
static int fact(int n)
{
int res = 1;
// Loop to find the factorial
// of the given number
for(int i = 2; i < n + 1; i++)
res = res * i;
return res;
}
// Driver Code
public static void Main(String[] args)
{
int n = 5;
// Function Call
Console.Write(nCr(n, 4));
}
}
// This code is contributed by shivanisinghss2110
Javascript
输出:
5
如果您希望与专家一起参加现场课程,请参阅DSA 现场工作专业课程和学生竞争性编程现场课程。