Algorithm/백준

[알고리즘]백준 11050번: 이항 계수 1

Im_light.J 2023. 2. 4. 11:08
728x90

문제

 

자연수 과 정수 가 주어졌을 때 이항 계수를 구하는 프로그램을 작성하시오.

 

입력

 

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

 

출력

$(N/K)$를 출력한다.

N, K = map(int, input().split(" "))
a=1
b=1
for i in range(N-K+1,N+1):
    a*=i 
for i in range(1,K+1):
    b*=i

print(int(a/b))

 

 

가능한 N의 범위가 적기 때문에 어떻게든 값만 구하면 시간 초과는 안나올 것이라고 생각해 접근했다 

팩토리얼을 반복문으로 구현할때와 마찬가지로 진행한다 

 

최대한 계산을 간략히 하기 위해서 n!과 (n-k)!을 약분해준뒤 진행한다 

 

 

728x90