728x90
문제 11050. 이항 계수 1
1. 나의 코드와 발상 과정
def fac(n):
if n == 0:
return 1
return n * fac(n-1)
n, k = map(int, input().split())
print(fac(n)//(fac(k)*fac(n-k)))
def를 처음 알고리즘 공부에 사용하기 시작하였다.
이항계수가 뭔지 몰라 구글 선생님께 물어보다가 이항계수는 팩토리얼 개념이 들어가 있다는 것을 알았다.
아하... 조합...
계속해서 곱하는 것을 다음과 같이 할 수 있다는 정보를 얻을 수 있었다.
(1) 반복문
(2) 재귀함수 구현
이제 함수도 구현해야 하니까.. 직접 네 줄의 코드를 짜보았다.
어제 재귀함수 강의 살짝 듣고 복습했는데 구상을 하려고 하니 머리가 아팠지만 금방 떠올려서 풀어버렸다.
2. 아쉬운 점
함수 제작에 더 많은 연습이 필요할 것 같다.
728x90
'Problem Solving' 카테고리의 다른 글
[백준] 11650 좌표 정렬하기 python 알고리즘 문제 (0) | 2022.04.20 |
---|---|
[백준] 10989 수 정렬하기 python 알고리즘 문제 (0) | 2022.04.20 |
[백준] 2869 달팽이는 올라가고 싶다 python 알고리즘 문제 (0) | 2022.04.20 |
[백준] 2798 블랙잭 python 알고리즘 문제 (0) | 2022.04.20 |
[백준] 2231 분해합 python 알고리즘 문제 (0) | 2022.04.20 |
댓글