728x90
반응형
1010번: 다리 놓기
입력의 첫 줄에는 테스트 케이스의 개수 T가 주어진다. 그 다음 줄부터 각각의 테스트케이스에 대해 강의 서쪽과 동쪽에 있는 사이트의 개수 정수 N, M (0 < N ≤ M < 30)이 주어진다.
www.acmicpc.net
1. 문제 설명
2. 풀이과정
해당 문제는 서쪽의 사이트가 동쪽의 사이트를 선택할 때 어차피 다리가 겹칠 수 없으므로 뽑은 결과를 나열하지는 않는다. 무조건 선택한 경우는 위에서부터 다리가 놓이기 때문이다. 따라서 조합의 경우로 계산할 수 있다.
조합을 계산하는 방법은 M개에서 N개를 선택할 때, M! / {(M - N)! * N!}으로 계산할 수 있다.
- sys.stdin.readline() 함수를 사용하기 위해 sys 모듈을 불러온다. import sys
- factorial() 함수를 사용하기 위해 math 모듈을 불러온다. import math
- 테스트 케이스 개수를 입력받는다. T = int(sys.stdin.readline())
- 테스트 케이스 횟수만큼 반복하며 for _ in range(T)
- 서쪽과 동쪽의 사이트 개수를 입력받는다. N, M = map(int, sys.stdin.readline().split())
- 조합의 경우의 수를 계산한다. result = math.factorial(M) // (math.factorial(M - N) * math.factorial(N))
- 결과를 출력한다. print(result)
반응형
3. 소스코드
import sys
import math
T = int(sys.stdin.readline())
for _ in range(T):
N, M = map(int, sys.stdin.readline().split())
result = math.factorial(M) // (math.factorial(M - N) * math.factorial(N))
print(result)
728x90
반응형
'백준' 카테고리의 다른 글
[백준] 2748번 : 피보나치 수 2 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.08.26 |
---|---|
[백준] 1541번 : 잃어버린 괄호 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.08.21 |
[백준] 11727번 : 2xn 타일링 2 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.08.20 |
[백준] 2156번 : 포도주 시식 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.08.19 |
[백준] 2442번 : 별 찍기 - 5 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.08.17 |
[백준] 11724번 : 연결 요소의 개수 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.08.16 |
[백준] 10816번 : 숫자 카드 2 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.08.15 |
[백준] 2444번 : 별 찍기 - 7 - 파이썬(Python) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.08.14 |