[Baekjoon] Class2 35 - 이항 계수 1 [11050]
이항 계수 1 [11050번]
자연수 N과 정수 K가 주어졌을 때 이항 계수 $\begin{pmatrix}N\K \end{pmatrix}$를 구하는 프로그램을 작성하시오.
입력
첫째 줄에 N과 K가 주어진다. (1 ≤ N ≤ 10, 0 ≤ K ≤ N)
출력
$\begin{pmatrix}N\K \end{pmatrix}$를 출력한다.
생각해볼점
콤비네이션 계산하는 방식을 그대로 이용하였다.
예를 들어 5C3
인 경우 5 * 4 * 3
을 3 * 2 * 1
로 나눔으로써 구할 수 있다.
이 방법 외에도 5C3 = 5! / 2!3!
인 점을 이용하여 구현할 수도 있을 것 같다.
코드 구현
#include <stdio.h>
int main()
{
int n, k, temp, result = 1;
scanf("%d %d", &n, &k);
temp = -1;
while (++temp < k)
result *= n--;
while (temp-- > 0)
result /= k--;
printf("%d", result);
}