hi jaeneee
baekjoon(1010-다리놓기)_ python 본문
1) 문제
2) 예시
3) 제출
import sys
import math
input = sys.stdin.readline
sen = ""
for i in range(int(input())):
n, m = map(int, input().split())
sen += str(math.comb(max(n, m), min(n, m))) + "\n"
print(sen)
4) 메모리/시간/코드길이
5) PLUS
겹치지 않게 한다는 말을
m에서 n개만큼 뽑아내고 n을 위에서부터 순서대로 이어주면 된다고 이해했다.
(문제에서 n<=m 조건을 이 블로그 쓰면서 보게됨,, 이러면 max, min을 쓸 필요가 없음,,)
그렇다면 mCn이 된다.
mCn을 하기 위해 노트를 펴고 생각을 해 봤지만 파이썬에서 조합 함수가 있을 것 같아서 찾아봤더니
import math만 해주면 math(m,n)으로 조합 수를 구할 수 있다는 것을 알게 되었다.
한 케이스마다 출력하면 시간이 더 걸릴 것 같아서
sen에 각 결과를 넣어서 케이스 입력이 모두 끝난 후 출력했다.
'알고리즘 > baekjoon' 카테고리의 다른 글
baekjoon(1049-기타줄 )_ python (0) | 2022.05.21 |
---|---|
baekjoon(15596-정수 N개의 합)_ python (0) | 2022.05.18 |
baekjoon(1094-막대기)_ python (0) | 2022.05.15 |
baekjoon(1026-보물)_ python (0) | 2022.05.14 |
baekjoon(11047-동전0)_ python (0) | 2022.05.02 |
Comments