본문 바로가기
Develop/백준 (python)

[백준] 11050번: 이항 계수 1 (python)

by Tarra 2022. 1. 16.

11050번: 이항 계수 1


문제 )
자연수 N과 정수 K가 주어졌을 때 이항 계수$$\begin{pmatrix} N \\ K \end{pmatrix} $$를 구하는 프로그램을 작성하시오.

 

입력 :

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

출력 :

$$\begin{pmatrix} N \\ K \end{pmatrix} $$를 출력한다.

 

 

풀이)

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
nums = input()
nums = nums.split(" ")
nums = list(map(int, nums))
 
= 1 # N!
for i in range(1, nums[0]+1):
    n *= i
 
= 1 # K!
for i in range(1, nums[1]+1):
    k *= i
 
n_k = 1 #(N-K)!
for i in range(1, nums[0]-nums[1]+1):
    n_k *= i
 
print(n//(k*n_k))
cs

위 식은 이항계수를 구하는 식인

를 이용해서 짰다. 사실 식만 보고 알고리즘을 짠 것이라. 제대로 맞았다고 하긴 좀 그렇고

추후에 이항계수에 대한 포스팅을 따로 진행해야겠다.


출처 : https://www.acmicpc.net/problem/11050

 

11050번: 이항 계수 1

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

www.acmicpc.net