μ¬μμ΄λ ν λμμ μμ₯μ΄ λμλ€. μ΄ λμμλ λμλ₯Ό λμͺ½κ³Ό μμͺ½μΌλ‘ λλλ ν° μΌμ§μ λͺ¨μμ κ°μ΄ νλ₯΄κ³ μλ€. νμ§λ§ μ¬μμ΄λ λ€λ¦¬κ° μμ΄μ μλ―Όλ€μ΄ κ°μ 건λλλ° ν° λΆνΈμ κ²ͺκ³ μμμ μκ³ λ€λ¦¬λ₯Ό μ§κΈ°λ‘ κ²°μ¬νμλ€. κ° μ£Όλ³μμ λ€λ¦¬λ₯Ό μ§κΈ°μ μ ν©ν κ³³μ μ¬μ΄νΈλΌκ³ νλ€. μ¬μμ΄λ κ° μ£Όλ³μ λ©΄λ°ν μ‘°μ¬ν΄ λ³Έ κ²°κ³Ό κ°μ μμͺ½μλ Nκ°μ μ¬μ΄νΈκ° μκ³ λμͺ½μλ Mκ°μ μ¬μ΄νΈκ° μλ€λ κ²μ μμλ€. (N β€ M)
μ¬μμ΄λ μμͺ½μ μ¬μ΄νΈμ λμͺ½μ μ¬μ΄νΈλ₯Ό λ€λ¦¬λ‘ μ°κ²°νλ €κ³ νλ€. (μ΄λ ν μ¬μ΄νΈμλ μ΅λ ν κ°μ λ€λ¦¬λ§ μ°κ²°λ μ μλ€.) μ¬μμ΄λ λ€λ¦¬λ₯Ό μ΅λν λ§μ΄ μ§μΌλ €κ³ νκΈ° λλ¬Έμ μμͺ½μ μ¬μ΄νΈ κ°μλ§νΌ (Nκ°) λ€λ¦¬λ₯Ό μ§μΌλ €κ³ νλ€. λ€λ¦¬λΌλ¦¬λ μλ‘ κ²Ήμ³μ§ μ μλ€κ³ ν λ λ€λ¦¬λ₯Ό μ§μ μ μλ κ²½μ°μ μλ₯Ό ꡬνλ νλ‘κ·Έλ¨μ μμ±νλΌ.
import sys
input = sys.stdin.readline
import math
t = int(input())
for i in range(t): #ν
μ€νΈ μΌμ΄μ€ λ§νΌ λ°λ³΅
cases = list(map(int,input().split()))
print(math.comb(cases[1], cases[0]))
μ‘°ν© κ³΅μμ μ΄μ©ν΄μ νΈλ λ¬Έμ μ΄λ€.
μ‘°ν© : nκ° μ€ rκ°λ₯Ό λ½λ κ²½μ°μ μ
nCr
= (nβr)! / r!n!
math λͺ¨λ μ€ combμ μ΄μ©νλ©΄ μ‘°ν© κ³΅μμ νΈλ¦¬νκ² μ¬μ©ν μ μλ€.
math.comb(n, r) // nκ° μ€μμ rκ°λ₯Ό μ ν