[백준] 1010번: 다리 놓기 (파이썬)


[백준] 1010번: 다리 놓기 (파이썬)

#백준 #단계별로풀어보기 #파이썬 #Python #15단계 #정수론및조합론 > #1010번: 다리 놓기 import sys from math import factorial T = int(sys.stdin.readline()) for _ in range(T): N,M = map(int, sys.stdin.readline().split()) Max = max(N,M) Min = min(N,M) # Combination 구하기 print(factorial(Max)//(factorial(Min)*factorial(Max-Min))) 문제에 '다리끼리는 서로 겹칠 수 없다'라는 조건이 있습니다. 즉 이럴 때에는 사이트(빨간 점)이 많은 쪽에서 적은 쪽의 개수만큼을 고르는 것이니, combination 연산(조합)을 하면 됩니다. (만약 '다리끼리 서로 겹칠 수 있다'이면 permutation 연산(순열)을 하면 되겠네요.) 그렇기에 아래와 같은 combination 연산을 하고자, 팩토리얼을...


#1010번 #파이썬 #조합 #정수론및조합론 #정수론및조합 #순열과조합 #순열 #백준 #단계별로풀어보기 #다리놓기 #Python #permutation #factorial #combination #15단계 #팩토리얼

원문링크 : [백준] 1010번: 다리 놓기 (파이썬)