반응형
[ 문제 ]
자연수 과 정수 가 주어졌을 때 이항 계수를 구하는 프로그램을 작성하시오.
[ 코드 ]
string[] s = Console.ReadLine().Split();
int n = int.Parse(s[0]);
int k = int.Parse(s[1]);
int result = BinomialCoefficient(n, k);
Console.WriteLine(result);
//이항계수 계산
static int BinomialCoefficient(int n, int k)
{
if(k < 0 || k > n)
{
return 0;
}
return Factorial(n) / (Factorial(k) * Factorial(n - k));
}
//팩토리얼 계산
static int Factorial(int i)
{
if (i <= 0)
{
return 1;
}
return i * Factorial(i - 1);
}
[ 풀이 ]
함수 내부에서 입력된 k 값이 0보다 작거나 n 값보다 큰 경우에는 이항계수가 존재하지 않으므로 0을 반환.
[ 실행화면 ]
문제링크: https://www.acmicpc.net/problem/11050
11050번: 이항 계수 1
첫째 줄에 \(N\)과 \(K\)가 주어진다. (1 ≤ \(N\) ≤ 10, 0 ≤ \(K\) ≤ \(N\))
www.acmicpc.net
반응형
'Language > C#' 카테고리의 다른 글
[C#] 백준 11282 한글 (0) | 2024.02.01 |
---|---|
[C#] 백준 10798번 세로읽기 (0) | 2024.01.31 |
[C#] 백준 5575번 타임카드 (0) | 2024.01.30 |
[C#] 백준 14652번 나는 행복합니다~ (0) | 2024.01.29 |
[C#] 백준 11365번 !밀비 급일 (0) | 2024.01.29 |