https://swexpertacademy.com/main/main.do
def my_factorial(n):
if n>1:
return n*my_factorial(n-1)
else:
return 1
T = int(input())
for t in range(1,T+1):
N = int(input())
print("#{}".format(t))
print(1)
for n in range(1,N):
for i in range(n+1):
print(my_factorial(n)//(my_factorial(n-i)*my_factorial(i)), end=" ")
print("")
고등수학에 나오는 조합을 이용해 풀었다.
조합은 팩토리얼로 이루어진 식으로 바꿀 수 있다.
근데 파이썬에서 팩토리얼함수는 기본 내장함수가 아니다.
math라이브러리에서 import를 해야하는데 sw expert academy 홈페이지에서는 import가 잘 안된다.
그래서 아래의 링크를 보고 팩토리얼 함수를 만들어봤다.
재귀함수다.
나머지는 평범하다.
이 factorial 함수를 꼭 기억해놔야겠다.
[출처]
-factorial
'Python > code problem' 카테고리의 다른 글
[sw expert academy] 1970. 쉬운 거스름돈 (0) | 2022.01.15 |
---|---|
[sw expert academy] 1926. 간단한 369 게임 (0) | 2022.01.15 |
[sw expert academy] 1974. 스도쿠 검증 (0) | 2022.01.07 |
[sw expert academy] 1954. 달팽이 숫자 (0) | 2022.01.06 |
[sw expert academy] 1966. 숫자를 정렬하자 (0) | 2022.01.05 |