[코딩 테스트 연습 입문] 구슬을 나누는 경우의 수
2022. 12. 25. 01:53ㆍcode/[프로그래머스] python
문제
머쓱이는 구슬을 친구들에게 나누어주려고 합니다. 구슬은 모두 다르게 생겼습니다. 머쓱이가 갖고 있는 구슬의 개수 balls와 친구들에게 나누어 줄 구슬 개수 share이 매개변수로 주어질 때, balls개의 구슬 중 share개의 구슬을 고르는 가능한 모든 경우의 수를 return 하는 solution 함수를 완성해주세요.
❗제한사항❗
- 1 ≤ balls ≤ 30
- 1 ≤ share ≤ 30
- 구슬을 고르는 순서는 고려하지 않습니다.
- share ≤ balls
입출력 예
입출력 예 설명
입출력 예 #1
- 서로 다른 구슬 3개 중 2개를 고르는 경우의 수는 3입니다.
입출력 예 #2
- 서로 다른 구슬 5개 중 3개를 고르는 경우의 수는 10입니다.
✔풀이
import math
def solution(balls, share):
answer = math.factorial(balls)/((math.factorial(balls-share))*(math.factorial(share)))
return answer
👑모범 답안
🔎다른 답안도 있었지만, 개인적으로 멋있다고 생각했다.
새로운 함수 factorial을 for문으로 구현했다.
👀느낀 점
: 분명 팩토리얼을 구하는 것이 있을 것 같다고 생각해서 검색 후, 공부를 하고 코드를 짰다.
math에는 쓸만한 것들이 정말 많은 것 같다.
더 많이 활용해보면서 내 것으로 만들어야겠다.
일단 오늘은 math.factorial()
'code > [프로그래머스] python' 카테고리의 다른 글
[코딩 테스트 연습 입문] 2차원으로 만들기 (0) | 2022.12.25 |
---|---|
[코딩 테스트 연습 입문] 배열 회전시키기 (0) | 2022.12.25 |
[코딩 테스트 연습 입문] 모스부호 (1) (0) | 2022.12.25 |
[코딩 테스트 연습 입문] 진료순서 정하기 (0) | 2022.12.25 |
[코딩 테스트 연습 입문] 외계행성의 나이 (0) | 2022.12.24 |