백준 / 조합 / 2407

Question

문제링크
Silver 3

Logic

기본 구조 : recursion
1. nCm의 계산식은 다음과 같다.

( n! / ( m! X (n-m)! ) )
  1. 각각을 for문 으로 길게 작성하는 것보다 함수를 활용하는 편이 좋다.
  2. 팩토리얼 계산문을 재귀함수로 작성한다.
  3. 이 때, 나누기 연산'/'는 큰 실수 함수로 계산시 오류가 발생할 수 있으므로, 몫 연산 '//' 로 진행한다.

Code

from sys import stdin

def fact(n):
    if n==0 : return 1
    else : return n*fact(n-1)

n,m = map(int,stdin.readline().rstrip().split())

print(int(fact(n)//(fact(m)*fact(n-m))))

좋은 웹페이지 즐겨찾기