백준 1010 다리 놓기

김민영·2023년 1월 12일
0

알고리즘

목록 보기
56/125

과정

  • 콤비네이션 연산 하기
  • 문제를 잘 읽지 않고 순열 구하는건 줄 알았다.. 문제 잘 읽기
import sys
input = sys.stdin.readline
tc = int(input())
for _ in range(tc):
    N, M = map(int, input().split())
    # M에서 N개만큼 순서대로 뽑는 횟수 콤비네이션

    MminusN = M-N
    ans = 1
    div = 1
    if N > MminusN:
        for i in range(N+1, M+1):
            ans *= i
        for i in range(1, MminusN+1):
            div *= i
    else:
        N, MminusN = MminusN, N
        for i in range(N+1, M+1):
            ans *= i
        for i in range(1, MminusN+1):
            div *= i

    print(ans//div)
profile
노션에 1차 정리합니당 - https://cream-efraasia-f3c.notion.site/4fb02c0dc82e48358e67c61b7ce8ab36?v=

0개의 댓글