백준

백준 1010 문제풀이 [python]

ys.k 2023. 6. 27. 00:23

포스팅에 앞서 내용이 틀릴 수 있습니다.
해당 부분 지적 감사히 받습니다.

문제를 보자.

그냥 수학 문제다.

 

필자는 고등학생 때, 확률 및 통계 과목에서 나름 자신이 있었다.

 

6년이 지난 지금, 자신감은 사라졌다.

 

근데 솔직히 보자마자 이거 조합 같은데, 생각은 났다.

 

공식이 기억이 안나서 그러지 ㅋㅋ...

 

잡담은 일축하고 코드를 보자.

import sys as s
a = int(input())

def fac(x):
    b = 1
    for i in range(x,0,-1):
        b *= i
    else:
        return b

for i in range(a):
    n,m = map(int,s.stdin.readline().split())
    print(fac(m)//(fac(m-n)*fac(n)))

 

조합 공식

nCr = n!/(n-r)!*r! 이다.

 

그리고 나머지 공식은 아래 사이트에서 참고하자.

 

https://coding-factory.tistory.com/606

 

[수학] 순열, 조합 공식 총정리

팩토리얼 ( ! ) 팩토리얼이란 서로 다른 n개를 나열하는 경우의 수를 의미합니다. 기호로는 n! 이렇게 쓰고 계산은 n부터 1씩 줄여나가면서 1이 될때까지의 모든 수를 곱합니다. 순열 ( nPr ) 순열이

coding-factory.tistory.com

잡담 한마디만 쓰고 싶다.

 

배운 점을 작성하는데 '배운'이라는 단어에 게슈탈트 붕괴 현상이 와서 한 1분 멍 때렸다.

 

멍 때리는 것도 재밌는 지금, 공부를 하고 있다는 반증이다.

 

배운 점

1. 배울 때 확실히 배워놔야 한다는 점을 배웠다.