끄적끄적 코딩
article thumbnail

 

이항 계수 문제입니다.

이항계수는 다음의 공식으로 나타낼 수 있습니다.
(N-0) * (N-1) * (N-2) * .... * (N-K+1) 
ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ
(K-0) * (K-1) * (K-2) * .... * (K-K+1)

예제 5 2의 경우
( 5 * 4 ) / ( 2 * 1 )로 나타낼 수 있습니다.

 

#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;

int main(int argc, char *argv[])
{
	int N, K;
	int num = 1;
	int div = 1;

	cin >> N;
	cin >> K;

	for (int i = 0; i < K; ++i) {
		num *= N - i;
		div *= K - i;
	}

	cout << num / div << endl;

	return 0;
}

검색 태그