티스토리 뷰

728x90
반응형

문제

www.acmicpc.net/problem/11050

 

11050번: 이항 계수 1

첫째 줄에 \(N\)과 \(K\)가 주어진다. (1 ≤ \(N\) ≤ 10, 0 ≤ \(K\) ≤ \(N\))

www.acmicpc.net

 

코드

# (n)  ==> nCk = n! / ((n-k)! * k!) 이항계수와 조합이 같은개념 같다
# (k)  

n , k = map(int,input().split())

def fac(a): # k가 입력값으로 0이 들어올 수 있으므로 0에대한 처리도 해줘야한다.
    if a== 0 :
        return 1
    if a == 1:
        return 1
    else:
        return a * fac(a-1)

print(fac(n) // (fac(n-k) * fac(k)))

 

코드설명

이항계수와 조합을 같은 뜻으로 보는 것 같다.

nCr 은 n개의 원소 중 r개의 원소를 뽑아내는 경우의 수를 말한다
nCr = n! / ((n-k)! * k!)

위에 공식을 사용하기 위해서 팩토리얼 함수를 만들어주고 위에 공식대로 풀어준다.

 

반응형
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/10   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31