Programmers/programmers

[프로그래머스]함수 두개 사용하기.

딸기뚜왈기 2023. 12. 10. 19:38
def factorial(a):
    n = 1
    for i in range(1,a+1):
        n *= i
    return n
        

def solution(balls, share):
    ball_2 = factorial(balls)
    share_1 = factorial(share)
    share_2 = factorial(balls-share)
    return ball_2/(share_1*share_2)

 

함수 두개를 사용하여 풀었다.

 

 

아래는 그 전 다른 풀이.

def factorial(a, b):
    for i in range(1,a+1):
        b*=i
    return b 

def solution(balls, share):
    start = 1
    b_s = balls - share
    # ball_1 = 1
    # s_1 = 1
    # s_2 = 1
    # for ball in range(1,balls+1):
    #     ball_1 *= ball
    # for s in range(1,share+1):
    #     s_1 *= s
    # for b in range(1,b_s+1):
    #     s_2 *= b
    ball_1 = factorial(balls, start)
    s_1 = factorial(share, start)
    s_2 = factorial(b_s, start)
        
    return ball_1/(s_1*s_2)

 

def factorial(a, b):
    for i in range(1,a+1):
        b*=i
    return b 

def solution(balls, share):
    start = 1
    # ball_1 = 1
    # s_1 = 1
    # s_2 = 1
    # for ball in range(1,balls+1):
    #     ball_1 *= ball
    # for s in range(1,share+1):
    #     s_1 *= s
    # for b in range(1,b_s+1):
    #     s_2 *= b
    # ball_1 = factorial(balls, start)
    # s_1 = factorial(share, start)
    # s_2 = factorial(balls-share, start)
        
    return factorial(balls, start)/(factorial(share, start)*factorial(balls-share, start))