반응형

파이썬 팩토리얼 4

[파이썬, Python] 백준 1010: 다리 놓기

문제 https://www.acmicpc.net/problem/1010 코드 import math t = int(input()) for i in range(t): r, n = map(int,input().split()) print(math.factorial(n) // (math.factorial(r) * math.factorial(n - r))) 설명 경우의 수를 구하는 문제이다. https://namu.wiki/w/%EA%B2%BD%EC%9A%B0%EC%9D%98%20%EC%88%98 경우의 수 - 나무위키 모든 팀이 2경기를 치른 이후 마지막 경기를 앞둔 시점의 대한민국의 16강에 진출할 수 있는 경우의 수이다. 경우의 수 중 볼드체 표시된 것은 실제 경기 결과이다. 2002년 - 조 1위 16강 진..

[파이썬, Python] 백준 1676: 팩토리얼 0의 개수

문제 https://www.acmicpc.net/problem/1676 1676번: 팩토리얼 0의 개수 N!에서 뒤에서부터 처음 0이 아닌 숫자가 나올 때까지 0의 개수를 구하는 프로그램을 작성하시오. www.acmicpc.net 코드 import math import sys input = sys.stdin.readline n = int(input()) num = str(math.factorial(n)) cnt = 0 for i in range(len(num)-1, -1, -1): if num[i] == '0': cnt += 1 else: print(cnt) break 설명 우선 팩토리얼 함수를 통해 입력받은 수의 팩토리얼을 계산한다. 이후 계산된 수의 뒷자리부터 0을 카운트하고, 0이 아니면 카운트 된..

[파이썬, Python] 백준 10872: 팩토리얼

문제 https://www.acmicpc.net/problem/10872 10872번: 팩토리얼 0보다 크거나 같은 정수 N이 주어진다. 이때, N!을 출력하는 프로그램을 작성하시오. www.acmicpc.net 코드 def fact(n): ans = 1 if n > 0: ans = n * fact(n-1) return ans n = int(input()) print(fact(n)) 설명 간단하게 팩토리얼로도 구현이 가능하지만, 재귀를 연습하는 문제이므로 재귀로 구현했다. n까지의 값을 구하면서, n-1의 팩토리얼을 이용하여 재귀를 사용하였다.

반응형