2025. 10. 2. 13:32 Baekjoon(Python)/단계별로 풀어보기(Python)

Baekjoon(Python)/단계별로 풀어보기(Python)

[백준][17단계 조합론] 1010번 /다리 놓기 (파이썬/Python)

junslee 2025. 10. 2. 13:32

1. 문제 설명

2. 코드

import sys, math
input = sys.stdin.readline
T = int(input().strip())
for _ in range(T):
    N,M = map(int,input().split())
    print(math.comb(M, N))

3. 풀이 과정

sys 패키지를 활용해 입력을 한번에 받고,

math 패키지를 활용해 math.comb(n, k)로 조합 수를 구한다.

조합은 n!/k!(n-k)! 수식을 의미한다.

math.factorial() 함수로 구할 수도 있지만, n!값이 너무 커질 수 있으므로 메모리 부하가 생길 수 있다.

테스트 케이스 개수 T를 받아서

T 횟수만큼 for문으로 N,M을 받아서 math.comb(M, N)을 계산해 출력한다.

반응형