오답노트
조합 알고리즘 본문
가끔 쓰는데가 있어서 여따 올린다
unsigned long long func(int a, int b)
{
int nChoose = 0, kChoose = 0;
unsigned long long p = 1, q = 1;
if (b == 0 || a == b)
return 1;
if (a - b > b)
{
nChoose = a - b;
kChoose = b;
}
else
{
kChoose = a - b;
nChoose = b;
}
//nCk or nCn-k
for (int j = 1; j <= a; j++)
{
if (nChoose < j)
p *= j; //n*..*k+1
if (kChoose >= j)
q *= j; // k!
}
return p / q;
}
'C,C++' 카테고리의 다른 글
MFC ADO 연결 샘플 소스 (0) | 2021.10.20 |
---|---|
ODBC 예제 프로젝트 링크 (0) | 2021.10.08 |
ANSI -> UTF8 (유니코드 -> 멀티바이트) (0) | 2021.10.05 |
iterator 사용법 (0) | 2021.08.09 |
malloc 과 sizeof (0) | 2021.03.27 |